0
>>> class MyKlass:
... pass
...
>>>
>>>
>>> a = MyKlass()
>>>
>>> type(a)
<type 'instance'>
>>> type(MyKlass)
<type 'classobj'>
>>>
>>>
>>> class MyKlass(object):
... pass
...
>>>
>>> a = MyKlass()
>>>
>>> type(a)
<class '__main__.MyKlass'>
>>> type(MyKlass)
<type 'type'>
>>>
在我上面的代码中,一个类不是从任何基类继承的,另一个类是从object
基类继承的。python类的不同行为
我读的地方,如果你不明确的继承,默认的父类是object
,对吗?
但是如果默认是object
,为什么键入到两个类都不一样?何时以及如何将这些不同的行为有用?
旧式和新式类之间的差异只存在在Python 2.x版本 – guidot
从第一句[此页](https://wiki.python.org/moin/NewClassVsClassicClass)关于“新”样式类(你来自哪里,'object'继承)和“老”的风格类(没有按” t继承自'object'):“A”New Class“是在现代Python中创建类的推荐方式。” “现代”一词的意思是Python版本2.2和2.7,在Python 3中,所有的类都是新风格的类。 –