python class definition
本问题已经有最佳答案,请猛点这里访问。
有时我看到一些定义为对象类子类的类,如
1 2 | class my_class(object): pass |
如果不同于简单的定义
1 2 | class my_class(): pass |
此语法声明一个新的样式类。
第一个是新的样式类,第二个是旧样式类。
编辑
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | In [1]: class A: ...: pass ...: In [2]: class B(object): ...: pass ...: In [3]: a = A() In [4]: b = B() In [5]: dir(a) Out[5]: ['__doc__', '__module__'] In [6]: dir(b) Out[6]: ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__'] |
对于python 2.x中的新样式类,必须从
对于python 3.x,没有区别。在python 2.x中,从
这是"新"样式,您的问题类似于python类继承对象