English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной курс Python

Python управление потоком

Функции Python

Типы данных Python

Python операции с файлами

Python объекты и классы

Python дата и время

Продвинутые знания Python

Руководство по Python

Использование и примеры delattr() в Python

Внутренние функции Python

delattr() удаляет атрибут из объекта (если объект это позволяет).

Синтаксис delattr():

delattr(object, name)

Параметры delattr()

delattr() имеет два параметра:

  • object-из объекта, из которого нужно удалить атрибут name

  • name-это строка, которая должна бытьв объектеНазвание удаленного свойства

Возврат delattr()

delattr() не возвращает никакого значения (возвращает None). Он только удаляет свойства (если объект это позволяет).

Пример 1: как работает delattr()?

class Coordinate:
  x = 10
  y = -5
  z = 0
point1 = Coordinate() 
print('x = ', point1.x)
print('y = ', point1.y)
print('z = ', point1.z)
delattr(Coordinate, 'z')
print('--Удаление атрибута z--')
print('x = ', point1.x)
print('y = ', point1.y)
# Возникает ошибка
print('z = ', point1.z)

При выполнении этой программы вывод будет следующим:

x = 10
y = -5
z = 0
--Удаление атрибута z--
x = 10
y = -5
Traceback (most recent call last):
  File 'python', line 19, in <module>
AttributeError: 'Coordinate' object has no attribute 'z'

Здесь, с помощью delattr(Coordinate, 'z') атрибут z удаляется из класса Coordinate.

Пример 2: использование оператора del для удаления свойств

Вы также можете использовать оператор del для удаления свойств объекта.

class Coordinate:
  x = 10
  y = -5
  z = 0
point1 = Coordinate() 
print('x = ', point1.x)
print('y = ', point1.y)
print('z = ', point1.z)
# Удаление атрибута z
del Coordinate.z
print('--Удаление атрибута z--')
print('x = ', point1.x)
print('y = ', point1.y)
# Возникает ошибка атрибута
print('z = ', point1.z)

Вывод программы будет таким же, как и выше.

Внутренние функции Python