好吧,问题似乎出在Python2.7中的旧样式类与新样式类。在

在python3.4中,您可以看到使用object和不使用object之间的区别只是符号的加载(没有那么重要):C:\TEMP>C:\Python34\python.exe

Python 3.4.2 (v3.4.2:ab2c023a9432, Oct 6 2014, 22:15:05) [MSC v.1600 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> def a():
... class A(object): pass
...
>>> def b():
... class B(): pass
...
>>> import dis
>>> dis.dis(a)
2 0 LOAD_BUILD_CLASS
1 LOAD_CONST 1 (", line 2>)
4 LOAD_CONST 2 ('A')
7 MAKE_FUNCTION 0
10 LOAD_CONST 2 ('A')
13 LOAD_GLOBAL 0 (object) # Extra step, not that expensive.
16 CALL_FUNCTION 3 (3 positional, 0 keyword pair)
19 STORE_FAST 0 (A)
22 LOAD_CONST 0 (None)
25 RETURN_VALUE
>>> dis.dis(b)
2 0 LOAD_BUILD_CLASS
1 LOAD_CONST 1 (", line 2>)
4 LOAD_CONST 2 ('B')
7 MAKE_FUNCTION 0
10 LOAD_CONST 2 ('B')
13 CALL_FUNCTION 2 (2 positional, 0 keyword pair)
16 STORE_FAST 0 (B)
19 LOAD_CONST 0 (None)
22 RETURN_VALUE
>>>

而在Python 2.7上,还有另一个涉及加载元组的步骤:

^{pr2}$