Tupel in einer Klasse will nicht. (object not callable)

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Nicht_zu_definieren
User
Beiträge: 21
Registriert: Freitag 21. April 2006, 17:01
Kontaktdaten:

Donnerstag 17. Mai 2007, 22:10

Hallo!

Ich hab ein Problem, lassen wir zuerst mal bisschen Code sprechen:

Code: Alles auswählen

class IPRange:
    knownIPs = ('192.168.0.100', '67.88.12.254')
    knownIPInRange = (
    ('192.168.0.100', ('192.168.0.0', '192.168.0.255')),
    ('62.47.88.67', ('62.0.0.0', '63.0.0.0')),
    ('62.47.88.67', ('62.46.0.0', '62.47.255.255'))
    ('62.47.88.67', ('62.47.88.0', '62.47.88.255')),
    )
Der Code will nicht, er gibt mir als Fehlermeldung:

Code: Alles auswählen

Traceback (most recent call last):
  File "unittest_ip.py", line 4, in ?
    class IPRange:
  File "unittest_ip.py", line 6, in IPRange
    knownIPInRange = (
TypeError: 'tuple' object is not callable
Er soll mir als Variablen knownIPs und knownIPInRange definieren.
Wieso funktioniert das nicht? Wie muss ich das umändern, so dass es geht?
Danke schon mal im Voraus.
BlackJack

Donnerstag 17. Mai 2007, 22:42

Du versuchst ein Tupel wie eine Funktion aufzurufen. Ein Aufruf ist ja eine Argumentliste in Klammern, die nach einem Objekt steht. Also so etwas sollte man nicht machen:

Code: Alles auswählen

In [43]: ('a', 'b') ('c', 'd')
---------------------------------------------------------------------------
exceptions.TypeError          Traceback (most recent call last)

/home/new/<ipython console>

TypeError: 'tuple' object is not callable
Ich denke mal die Stelle wo das Komma fehlt, findest Du selber. :-)
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Freitag 18. Mai 2007, 06:11

Dir fehlt ein Komma am Zeilenende des vorletzten Eintrages.
TUFKAB – the user formerly known as blackbird
Antworten