[EMAIL PROTECTED] wrote: > Ok, maybe this is a stupid question, but why can't I make a subclass of > datetime.date and override the __init__ method? > > --- > > from datetime import date > > class A(date): > def __init__(self, a, b, c, d): > print a, b, c, d > date.__init__(self, 2006, 12, 11) > > d = A(1, 2, 3, 4) > > --- > > $ python break_date.py > Traceback (most recent call last): > File "break_date.py", line 9, in ? > d = A(1, 2, 3, 4) > TypeError: function takes exactly 3 arguments (4 given) > > > If I make A a subclass of some toy class that is constructed with three > arguments, it works fine. Why can't I make "date" the subclass?
You'll have to also override the __new__ method. Georg -- http://mail.python.org/mailman/listinfo/python-list