# Author : hacker Hu class MyType(type): def __init__(self, name, bases=None, dict=None): print('MyType init') super(MyType, self).__init__(name, bases, dict) def __call__(self, *args, **kwargs): print('MyType call') obj = self.__new__(self, *args, **kwargs) self.__init__(obj, *args, **kwargs) class A(object, metaclass=MyType): def __new__(cls, *args, **kwargs): print('A new') return super(A, cls).__new__(cls) def __init__(self, *args, **kwargs): print(' A init') a = A()
python metaclass 和 __new__方法
最新推荐文章于 2023-06-06 19:15:04 发布