所以我只是学习python(我知道很多其他语言)而且我对某些事感到困惑。我认为这是由于缺乏文档(至少我能找到)。在一些网站上,我读过你应该从object
派生你的课程:
class Base(object):
pass
但我不知道那是做什么或为什么或何时应该这样做。我是否错过了关于此的官方文件?这是一个3.x功能吗?
答案 0 :(得分:22)
大多数情况下,你是否从对象继承并不重要,但是如果你不这样做,那么当你忘记了你决定不去打扰时,有些错误会等着你。
如果你最终没有从对象继承,一些微妙的东西将无法正常工作:
get
正常工作,但set
做了奇怪的事情。有些人继续使用经典课程是好的,除非他们需要新的行为,其他人则说总是使用新的风格课程以避免以后拍摄自己的脚。如果你正在为一个人工作,做任何对你有益的事情;如果它的共享项目与其他开发人员保持一致。
答案 1 :(得分:7)
从这里开始:http://www.python.org/doc/newstyle/
另外,请阅读:http://docs.python.org/release/2.5.2/ref/node33.html
它是版本3中不再需要的几个Python 2临时解决方案之一。
答案 2 :(得分:4)
在Python 3中,无论你是否自己这样说,类都会隐式扩展对象。
请参阅here。