知识点:
class A(object):
pass
class B(A):
def __init__(self):
print 'init'
def __new__(cls, *args, **kwargs):
print 'new %s ' % cls
# 返回父类的对象
return object.__new__(A, *args, **kwargs)
b=B()
print type(b)
#输出
new
# 由于new返回的是父类的对象,B不会调用init,因此没有‘init’输出
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4440/viewspace-2807848/ ,如需转载,请注明出处,否则将追究法律责任。