Message253944
Relevant post from Tim Peters back in 2005, on the subject of subclassing datetime and timedelta:
"""
Yes, and all builtin Python types work that way. For example,
int.__add__ or float.__add__ applied to a subclass of int or float
will return an int or float; similarly for a subclass of str. This
was Guido's decision, based on that an implementation of any method in
a base class has no idea what requirements may exist for invoking a
subclass's constructor. For example, a subclass may restrict the
values of constructor arguments, or require more arguments than a base
class constructor; it may permute the order of positional arguments in
the base class constructor; it may even be "a feature" that a subclass
constructor gives a different meaning to an argument it shares with
the base class constructor. Since there isn't a way to guess, Python
does a safe thing instead.
"""
Source: https://mail.python.org/pipermail/python-list/2005-January/311610.html |
|
Date |
User |
Action |
Args |
2015-11-02 19:13:51 | mark.dickinson | set | recipients:
+ mark.dickinson, rhettinger, r.david.murray, rmalouf |
2015-11-02 19:13:51 | mark.dickinson | set | messageid: <1446491631.33.0.76367364142.issue25535@psf.upfronthosting.co.za> |
2015-11-02 19:13:51 | mark.dickinson | link | issue25535 messages |
2015-11-02 19:13:51 | mark.dickinson | create | |
|