[python-nl] extending classes

Guido Wesdorp guido at infrae.com
Thu Apr 20 02:07:15 CEST 2006


Chris Niekel wrote:
> Maar dit is ook nog niet zo fraai, nu moet je 2x aangeven dat je vast
> 'test' erft. Dat gaat met 'super', maar daar weet ik nu de syntax even niet
> van.
> 

Syntax is super(<class>, <instance>), voorbeeld:

def test3(test):
    def __init__(self):
        super(test3, self).__init__()

Heeft als voordeel dat het opzoeken van de base class waarop de method
wordt aangeroepen door Python wordt uitgezocht, en (als het goed is) ook
netjes wordt omgegaan met multiple inheritance situaties waarin een
method met dezelfde naam op meerdere base classes aanwezig is.

Ik ben ditk in de tutorial inderdaad niet tegen gekomen overigens, al
heb ik ook niet al te hard gezocht...

Groeten,

Guido


More information about the Python-nl mailing list