Python object() 函数



Python object() 函数是一个返回新对象的内置函数。此对象是 Python 中所有类的基础,它缺少特征和属性。请注意,无法向此对象添加任何新属性或方法。

当我们调用 object() 函数时,它会创建一个基对象类的实例,默认情况下该实例为空。在 Python 中,我们创建的每个类都隐式继承自该类,这意味着任何类的任何实例也是对象类的实例。

语法

以下是 Python object() 函数的语法 -


 object()

参数

Python object() 函数不接受任何参数。

返回值

Python object() 函数返回一个新的无特征对象。

object() 函数示例

练习以下示例来理解 Python 中 object() 函数的使用:

示例:使用 object() 函数创建对象的实例

在下面的代码中,实例化了 object 类的实例。然后,我们使用 type() 函数检查此对象的类型。


newObject = object()
checker = type(newObject)
print("The type of object of object class:", checker)

以下是上述代码的输出 -

The type of object of object class: <class 'object'>

示例:使用 object() 函数

以下示例显示了 Python object() 函数的基本用法,其中我们创建了一个新的、没有类方法或属性的无特征对象实例。


newObject = object()
print(newObject)

当我们运行上述程序时,它会产生以下结果——

<object object at 0x780e80404510>

示例:检查 Class 是否是另一个类的子类

object() 函数可用于检查特定类是另一个类的直接或间接子类。在下面的代码中,我们检查类 “newClass” 是否是 “object” 的子类。由于 Python 中的所有类都继承自对象类,因此代码将返回 True。


class newClass:
	 	pass

checker = issubclass(newClass, object)
print("Is the newClass a subclass of object:", checker)

以下是上述代码的输出 -

Is the newClass a subclass of object: True

示例:方法解析顺序链中 object() 的顺序

object() 函数位于 Python 类中方法解决顺序链的末尾。为了演示相同的内容,我们使用了 “mro()” 方法,该方法列出了方法的解析顺序。


class newClass:
	 	pass

class newChildClass(newClass):
	 	pass

print("The order of method resolution:")
print(newChildClass.mro())

上述代码的输出如下 -

The order of method resolution:
[<class '__main__.newChildClass'>, <class '__main__.newClass'>, <class 'object'>]