我发现以下两项都有效:
class Foo():
def a(self):
print "hello"
class Foo(object):
def a(self):
print "hello"
所有 Python 类都应该扩展对象吗?不扩展对象是否存在任何潜在问题?
在Python 2中,不继承自object
将创建一个旧式类,除了其他效果外,还会导致type
给出不同的结果:
>>> class Foo: pass
...
>>> type(Foo())
<type 'instance'>
vs.
>>> class Bar(object): pass
...
>>> type(Bar())
<class '__main__.Bar'>
多重继承的规则也是不同的我什至不会尝试在这里总结的方式。我见过的所有有关 MI 的优秀文档都描述了新型类。
最后,旧式类在 Python 3 中消失了,继承自object
已经变得隐含了。因此,除非您需要与旧软件向后兼容,否则总是更喜欢新样式的类。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)