alex wrote: > Hi, > > it is possible to define multiple initialization methods so that the > method is used that fits?
No, there is no overloading in Python. > I am thinking of something like this: > > def __init__(self, par1, par2): > self.init(par1, par2); > > def __init__(self, par1): > self.init(par1, None) > > def init(self, par1, par2): > ... > ... > > So if the call is with one parameter only the second class is executed > (calling the 'init' method with the second parameter set to 'None' or > whatever. But this example does not work. > > How to get it work? > > Alex > Use a default argument for par2 and check for that in your function: def __init__(self, par1, par2=None): # do something with par1 if par2 is None: print "par2 was not given!" else: print "par2 is", par2 Read more in the FAQ: http://www.python.org/doc/faq/programming.html#how-can-i-overload-constructors-or-methods-in-python or in the tutorial: http://docs.python.org/tut/node6.html#SECTION006710000000000000000 Bye, Dennis -- http://mail.python.org/mailman/listinfo/python-list