我注意到可以使用3种形式的类定义:
class foo
、class foo()
和class foo(object)
,但是我不确定它们之间有什么区别,特别是在属性方面,这个问题是关于Python 3的。class foo
、class foo()
和class foo(object)
,但是我不确定它们之间有什么区别,特别是在属性方面,这个问题是关于Python 3的。我们来分析一下:
class foo
:
object
添加为基类。classobj
,这可能会给你带来各种麻烦。class foo()
:
class foo
相似,删除括号,这看起来很丑并且没有区别。class foo(object)
:
2
中使用的代码时使用此形式,显式地从object
继承会导致Python 2中的新风格类,而在3中不会有任何区别(除了一些额外的输入)。