Я не понимаю, почему следующий код ведет себя определенным образом, который описан ниже:
from abc import ABCMeta
class PackageClass(object):
__metaclass__ = ABCMeta
class MyClass1(PackageClass):
pass
MyClass2 = type('MyClass2', (PackageClass, ), {})
print MyClass1
print MyClass2
>>> <class '__main__.MyClass1'>
>>> <class 'abc.MyClass2'>
Почему repr(MyClass2)
говорит abc.MyClass2
(что, кстати, неверно)?
Спасибо!