当先锋百科网

首页 1 2 3 4 5 6 7

Python中的类默认都是继承自object类,而且这个特点只出现在Python 2中,Python 3中所有的类都会默认继承自object类。

# Python 2中定义类时不指定父类
class MyClass:
pass
# Python 2中查看MyClass的父类
print(MyClass.__bases__)
# 输出结果为:(,)
# Python 3中定义类时不指定父类
class MyClass:
pass
# Python 3中查看MyClass的父类
print(MyClass.__bases__)
# 输出结果为:(,)

从上面的代码可以看出,在Python 2中定义类时不指定父类,默认会继承自object类。而在Python 3中,也默认继承自object类。实际上,在Python 3中,即使明确指定了父类,也可以省略不写,效果跟默认继承自object类相同。

需要注意的是,在Python 2中,不继承自object类可能会导致某些Python内置函数和第三方库函数的使用出现问题。而在Python 3中,这个问题已经被解决,完全可以省略不写父类。