我正在尝试学习Python 3.在我读过的一本书中,定义了一个你使用的类:
class Classname:
# and so on
在另一篇文章中说:
class Classname(object):
# and so on
这是正确的方法吗?他们有什么不同?
答案 0 :(得分:2)
在你提到的特定情况下(即继承自object
),这在Python 3中没有区别。在Python 2中,这是旧样式类之间的区别
class Classname:
...
和新的样式类
class Classname(object):
...
当您使用Python 3进行编程时,我会省略它以使您的代码更易于阅读。由于所有对象都隐式继承自object
,因此这些信息对您的代码的读者没有帮助。
答案 1 :(得分:1)
仅对python 2.7有所不同:old-style and new-style classes in Python 2.7?
在python 3中
class SomeClass:
...
与
相同class SomeClass(object):
...