Steven D'Aprano wrote:
I'm not entirely sure what he means by "upcalls", but I believe it means
to call the method further up (that is, closer to the base) of the
inheritance tree.
I think it means this:
def __new__(cls):
MyBaseClass.__new__(cls)
which wouldn't work with a class method, because
MyBaseClass.__new__ would give a *bound* method
rather than an unbound one.
Python 3's version of super() seems to work with
class methods, but Python 2's doesn't (or at least
I couldn't get it to work in a brief test). Also,
I don't think super() existed at all when __new__
was invented.
--
Greg
--
https://mail.python.org/mailman/listinfo/python-list