Python对象()

时间:2020-02-23 14:43:06  来源:igfitidea点击:

Python object()函数返回一个新的无特征对象。
Python是一种面向对象的编程语言,而" object"是所有类的基础。

Python对象()

Python object()函数不接受任何参数。
由于它返回对象的新实例,因此其所有方法也存在于其他类中。

由于此功能没有功能,因此几乎没有实际用途。
返回的对象实例没有__dict__字典,因此我们不能为其分配任何任意属性。

obj = object()

print(type(obj))

print(dir(obj))

print(obj.__hash__())

输出:

<class 'object'>
['__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']
270490892

请注意,dir()函数输出没有__dict__作为属性。

让我们看看尝试为该对象实例分配属性时会发生什么。

obj.i = 10

输出:

AttributeError: 'object' object has no attribute 'i'