所以我刚刚学习python(我知道很多其他语言),我对某些东西感到困惑。我认为这是由于缺少文档(至少我能找到)。在一些网站,我读过,你应该从object
派生类:从python中的`object`派生类
class Base(object):
pass
但我看不出有什么,做或为什么或什么时候你应该这样做。有没有官方文件,我错过了?这是一个3.x功能吗?
所以我刚刚学习python(我知道很多其他语言),我对某些东西感到困惑。我认为这是由于缺少文档(至少我能找到)。在一些网站,我读过,你应该从object
派生类:从python中的`object`派生类
class Base(object):
pass
但我看不出有什么,做或为什么或什么时候你应该这样做。有没有官方文件,我错过了?这是一个3.x功能吗?
主要是它不无论你是否从对象继承,都会产生影响,但是如果你不知道有什么bug会在你忘记了你决定不打扰的时候赶上你。
一些微妙的事情就无法正常工作,如果你不最终从对象继承:在经典类
get
作品还好,但set
做奇怪的事情。有些人可以继续使用经典课程,除非他们需要新的行为,其他人则说总是使用新式课程,以避免后来在脚下自我射击。如果你正在从事单人项目的工作,对你有好处;如果其共享项目与其他开发者保持一致。
谢谢,这清理了很多。我希望这被记录得更好 – Falmarri 2010-08-03 19:18:13
从这里开始:http://www.python.org/doc/newstyle/
而且,阅读本:http://docs.python.org/release/2.5.2/ref/node33.html
这是一个将不再版本需要的几个Python 2的临时解决方案,一个3
在Python 3中,类隐式扩展对象,不管你是否自己这么说。
请参阅here。
我看了这里http://docs.python.org/tutorial/classes.html – Falmarri 2010-08-02 01:09:09