An object is an instance (or not)?
Ian Kelly
ian.g.kelly at gmail.com
Thu Jan 29 10:48:26 EST 2015
On Thu, Jan 29, 2015 at 12:16 AM, Steven D'Aprano
<steve+comp.lang.python at pearwood.info> wrote:
> Besides, descriptors are
> handled by the metaclass, so we could write a metaclass that doesn't handle
> them.
Maybe this doesn't affect your argument, but they're actually handled
by the class's __getattribute__, not by the metaclass.
>>> class MyMeta(type):
... def __getattribute__(cls, attr):
... raise AttributeError(attr)
...
>>> class MyClass(metaclass=MyMeta):
... @property
... def spam(self):
... return 42
...
>>> MyClass().spam
42
>>> class MyClass:
... def __getattribute__(self, attr):
... return type(self).__dict__[attr]
... @property
... def spam(self):
... return 42
...
>>> MyClass().spam
<property object at 0x7f0603e70598>
More information about the Python-list
mailing list