Il delattr () elimina un attributo dall'oggetto (se l'oggetto lo consente).
La sintassi di delattr()
è:
delattr (oggetto, nome)
Parametri delattr ()
delattr()
accetta due parametri:
- oggetto - l'oggetto da cui rimuovere l'attributo name
- nome - una stringa che deve essere il nome dell'attributo da rimuovere dall'oggetto
Valore restituito da delattr ()
delattr()
non restituisce alcun valore (restituisce None
). Rimuove solo un attributo (se l'oggetto lo consente).
Esempio 1: come funziona 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('--After deleting z attribute--') print('x = ',point1.x) print('y = ',point1.y) # Raises Error print('z = ',point1.z)
Produzione
x = 10 y = -5 z = 0 --Dopo aver cancellato l'attributo z-- x = 10 y = -5 Traceback (la chiamata più recente per ultima): File "python", riga 19, in AttributeError: l'oggetto 'Coordinate' non ha attributo "z"
Qui, l'attributo z viene rimosso dalla classe Coordinate utilizzando delattr(Coordinate, 'z')
.
Esempio 2: eliminazione dell'attributo utilizzando l'operatore del
È inoltre possibile eliminare l'attributo di un oggetto utilizzando l'operatore del.
class Coordinate: x = 10 y = -5 z = 0 point1 = Coordinate() print('x = ',point1.x) print('y = ',point1.y) print('z = ',point1.z) # Deleting attribute z del Coordinate.z print('--After deleting z attribute--') print('x = ',point1.x) print('y = ',point1.y) # Raises Attribute Error print('z = ',point1.z)
L'output del programma sarà lo stesso di sopra.