[python-nl] extending classes

Chris Niekel chris at niekel.net
Thu Apr 20 09:45:12 CEST 2006


On Thu, Apr 20, 2006 at 02:07:15AM +0200, Guido Wesdorp wrote:
> Syntax is super(<class>, <instance>), voorbeeld:

Dat dacht ik ook, maar ik krijg een error.

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

>>> class test5(test):
...     def __init__(self):
...         super(test5,self).__init__()
...         print 'test5'
...
>>> t = test5()
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "<stdin>", line 3, in __init__
TypeError: super() argument 1 must be type, not classobj

En wat nou het verschil tussen een type en een classobj is, geen idee.
Dit gaat fout in python 2.3 en 2.4

Groet,
Chris


More information about the Python-nl mailing list