Multiple constructors

vincent wehren vincent at visualtrans.de
Sun Feb 6 07:22:10 EST 2005


Reinhold Birkenfeld wrote:
> vincent wehren wrote:
> 
>>Philip Smith wrote:
>>
>>>Call this a C++ programmers hang-up if you like.
>>>
>>>I don't seem to be able to define multiple versions of __init__ in my matrix 
>>>class (ie to initialise either from a list of values or from 2 dimensions 
>>>(rows/columns)).
>>>
>>>Even if Python couldn't resolve the __init__ to use on the basis of argument 
>>>types surely it could do so on the basis of argument numbers???
>>>
>>>At any rate - any suggestions how I code this????
>>
>>Checking the number of arguments ain't all that hard:
>>
>>class Klass:
>>    def __init__(*args):
>>        self.args = args
>>        if len(self.args) == 1:
>>            # etc.
>>
>>This feels rather unpythonic, though. 
> 
> 
> And it won't work, as `self' is not defined. ;)

You're right of course!

Note to self: Must stop shooting from the hip ;)


--
Vincent




> 
> Reinhold



More information about the Python-list mailing list