, :
- python - ,
- - , ,
__bases__.
, object type .
, "" - type, , , ( - , ).
C voodoo python, !
EDIT: ( )
>>> class MyMeta(type):
... def __new__(cls, name, bases, dct):
... return type.__new__(cls, name, bases, dct)
...
>>> class MyClass(object):
... __metaclass__ = MyMeta
...
, obj object
>>> obj = MyClass()
>>> MyClass.__bases__
(<type 'object'>,)
dir(obj), __metaclass__: , __metaclass__ , . , :
>>> dir(MyClass)
['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__metaclass__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__']
>>> MyClass.__metaclass__
<class '__main__.MyMeta'>
, SO ( , !):
Python?
!