Wolfgang wrote: > Hi, > I am a newbie and have to modify some python moduls. > I get the followin error: > TypeError: __init__() takes exactly 3 arguments (2 given) > > Here the code snippet: > class gXconv: > def __init__(self, pathValue): > self.pathValue=pathValue > self.__sections = {} > self.__spalten = {} > self.labelfiles=[] > etc..... > > call: > try: > gx=gXconv.gXconv(gXconfPath) > except gXconv.gXconvertError, msg: > print msg > sys.exit(1)
That error can't appear in the above code - is the line in the stacktrace amongst the shown ones? I doubt it. The error means that you tried to call a function with less arguments than it expected. As in __init__ the first argument is implicit on creation of an object, the above errormessage indicates that there is an __init__ of the form class Foo: def __init__(self, arg1, arg2) pass called like this Foo("bar") But as the only constructor you show _has_ only one additional argument besides self and line gx=gXconv.gXconv(gXconfPath) shows that you called it properly, the error must come from somewhere else. -- Regards, Diez B. Roggisch -- http://mail.python.org/mailman/listinfo/python-list