Объект Python является базой для всех классов и содержит встроенные свойства и методы, которые используются по умолчанию для всех классов. Функция Python object() возвращает безликий объект.
Что такое функция object() в Python?
Python object() — это встроенная функция, которая возвращает пустой объект. Мы не можем добавлять к этому объекту новые свойства или методы. В Питоне каждая переменная, которой мы присваиваем значение или контейнер, рассматривается как объект.
Объект сам по себе является классом.
Синтаксис
|
1 |
object() |
Этот метод не имеет параметров.
Метод object() возвращает безликий класс, который действует как основа для всех объектов.
Пример
См. следующий пример.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# app.py # Declaring the object of class object obj1 = object() obj2 = object() # Printing the type print("Type of the object class object is : ", type(obj1)) # Printing its attribute print(dir(obj2)) # Now check if obj1 and obj2 are equal or not print(str(obj1 == obj2)) # Now we will try to add an attribute to 0bj2 # Lets see what happens obj2.address = "India" |
Вывод:
|
1 2 3 4 5 6 7 |
('Type of the object class object is : ', <type 'object'>) ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__'] False Traceback(most recent call last): File "object.py", line 18, in <module> obj2.address="India" AttributeError: 'object' object has no attribute 'address' |
В программе мы объявили два объекта, а затем печатаем их тип и атрибуты. Мы использовали встроенные функции type() и dir() для получения типа и всех атрибутов объекта соответственно.
Объект не имеет __dict__, как это предлагается в выводе. Следовательно, вы не можете назначать произвольные атрибуты экземплярам этого класса. Если мы присвоим какое-либо свойство объекту, то это выдаст нам ошибку AttributeError: объект ‘object’ не имеет атрибута.
Свойства объекта
- Объект всегда действует как базовый класс для всех объектов, которые мы создаем.
- Объекты класса object не могут добавлять к нему новый атрибут.
- Эти объекты созданы уникальным образом, и они никогда не возвращают значение true, если мы сравниваем другой объект.
