Автор оригинала: Pankaj Kumar.
Как использовать функцию Python Delattr ()?
Эй, читатели! В этой статье мы будем сосредоточиться Python Delattr () Функция Отказ
Начало работы с методом Python Delattr ()
В Объектно-ориентированное программирование , а Класс
это сущность, которая оборачивает атрибуты и поведение и представляет собой то же самое, используя Объект
Отказ
Особенностью класса существует в Python, так как это ориентированный объектно-ориентированный язык. При создании атрибутов и определении поведения мы можем столкнуться с ситуациями, когда мы хотели бы удалить определенные атрибуты класса Python. Это когда Python Delattr () поставляется на картинке.
Функция Delattr ()
используется для Удалить атрибут связано с определенным классом.
Синтаксис:
delattr(object, attribute)
Пример:
class Info: name = "AskPython" lang = "Python" site = "Google" obj = Info() print(obj.name) delattr(Info, 'lang')
Выход:
AskPython
В приведенном выше примере мы создали информацию о классе с атрибутами следующим образом:
- имя
- ланг
- сайт
Далее мы создали объект класса ‘ Информация «Использование команды ниже:
obj =()
После создания объекта мы удалили атрибут – ‘ Лэнг «Использование функции delattr ().
Ошибки и исключения с delattr ()
После удаления атрибута, если мы попытаемся получить доступ к этому конкретному объекту, компилятор бросит AttributeError
Отказ
Пример:
class Info: name = "AskPython" lang = "Python" site = "Google" obj = Info() delattr(Info, 'lang') print(obj.lang)
Выход:
--------------------------------------------------------------------------- AttributeError Traceback (most recent call last)in 5 obj = Info() 6 delattr(Info, 'lang') ----> 7 print(obj.lang) AttributeError: 'Info' object has no attribute 'lang'
Удаление атрибута с оператором Python del
Python del Operator
Также можно использовать для удаления атрибута класса напрямую без доступа к нему через объект.
Синтаксис:
del Class-name.attribute-name
Пример:
class Info: name = "AskPython" lang = "Python" site = "Google" print("Attribute before deletion:\n",Info.lang) del Info.lang print("Attribute after deletion:\n",Info.lang)
Выход:
Attribute before deletion: Python --------------------------------------------------------------------------- AttributeError Traceback (most recent call last)in 5 print("Attribute before deletion:\n",Info.lang) 6 del Info.lang ----> 7 print("Attribute after deletion:\n",Info.lang) AttributeError: type object 'Info' has no attribute 'lang'
Python Delattr () Метод V/S Python Del Оператор
Метод Python Delattr () более эффективен, что оператор Python del с точки зрения динамического удаления атрибутов.
На другой стороне оператор Python del выполняет операцию на более высокой скорости по сравнению с методом Python Delattr ().
Заключение
Таким образом, в этой статье мы поняли удаление атрибута через метод Python Delattr () и оператора DEL.