Python 内建函数列表 > Python 的内置函数 object
Python 的内置函数 object 是 Python 中最基础的类,它是所有类的基类。在 Python 中,所有的类都直接或间接地继承自 object 类。object 类提供了一些默认的方法和属性,这些方法和属性可以被所有 Python 对象使用。
基本特性
1class MyClass: 2 pass 3# 等同于 4class MyClass(object): 5 pass
- 默认方法:
object类提供了一些默认方法,如__str__,__repr__,__eq__等。这些方法可以在子类中被重写以实现自定义行为。__str__: 返回对象的字符串表示,通常用于print()函数。__repr__: 返回对象的官方字符串表示,通常用于调试。__eq__: 定义对象的相等性比较。
- 实例创建:
object()可以直接创建一个空对象实例。虽然这个实例没有自定义的属性和方法,但它拥有object类提供的基本功能。
1obj = object() 2print(obj) # 输出: <object object at 0x...>
应用场景
- 作为基类:在自定义类时,
object可以作为基类,用于定义新的数据类型。例如:
1class Person(object): 2 def __init__(self, name): 3 self.name = name 4 def __str__(self): 5 return f"Person: {self.name}"
- 类型检查:
object是所有类的基类,因此可以用它来进行类型检查。例如:
1isinstance(42, object) # 返回 True 2isinstance("hello", object) # 返回 True
- 默认行为:当需要创建一个没有任何自定义行为的对象时,可以直接使用
object()。这在某些特殊情况下可能有用,比如作为占位符或默认值。
1default_obj = object()
示例代码
以下是一个简单的示例,展示如何使用 object 类和自定义类:
1# 定义一个继承自 object 的类 2class Animal(object): 3 def __init__(self, name): 4 self.name = name 5 6 def __str__(self): 7 return f"Animal: {self.name}" 8 9# 创建实例 10dog = Animal("Dog") 11print(dog) # 输出: Animal: Dog 12 13# 检查继承关系 14print(isinstance(dog, object)) # 输出: True 15print(issubclass(Animal, object)) # 输出: True 16
注意事项
- 在 Python 3 中,所有类默认继承自
object,因此不需要显式地写出(object)。但在 Python 2 中,如果不显式继承object,创建的是旧式类(old-style class),这会影响到方法解析顺序(MRO)和一些内置方法的行为。 object实例本身没有__dict__属性,因此不能动态添加属性。如果需要动态添加属性,可以继承object并定义__dict__或使用其他方式。
总之,object 类是 Python 类体系的根基,理解它的作用和特性对于掌握 Python 面向对象编程至关重要。
《Python 的内置函数 object》 是转载文章,点击查看原文。