【发布时间】:2013-11-06 00:13:27
【问题描述】:
当你在python中声明一个类的时候,我经常看到(object)写在类名旁边。
class someClass(object):
def __init__(self, some_variable):
...
...
和下面写的一样吗?
class someClass: # didn't write (object) here.
def __init__(self, some_variable):
...
...
我真的看不出它们的功能有什么不同。这只是澄清someClass 是object 的subclass 的一种方式吗?当我创建class 时,明确写object 是一个好习惯吗?
【问题讨论】:
-
我喜欢@jwodder 的解释。就最佳实践而言,我倾向于显式使用
(object),这样我的代码就可以同时与 Python 2.x 和 3 一起使用,而不会造成混淆。