什么是以下代码之间的区别:
class ClassName(object):
pass
和
class ClassName:
pass
当我调用模块的帮助函数时,在help标题下第一个case中可以读到____builtin____.object
,而在第二个case中只显示类名。这些类之间是否有功能上的区别或者可能存在不同的方法?(我知道 class Classname(ParentClassName)
有实际用途)http://docs.python.org/reference/datamodel.html
这篇来自Guido的博客文章谈到了新风格类背后的动机,用更轻松的语言表达。http://python-history.blogspot.com.br/2010/06/new-style-classes.html
ClassName(object)
使用新式类:http://docs.python.org/release/2.5.2/ref/node33.html
第二个示例演示了旧式类。
在Python 3中,默认使用新式类,您将不再需要子类化object
。
class ClassName(object):
,但我认为您仍应该这样做。这更清晰。 - Jakob Bowyertimeit
的类Timer
) - Bentley4