Função built-in Python delattr()

Da documentação do Python 3

Este é um parente de `setattr()`. Os argumentos são um objeto e uma string. A string deve ser o nome de um dos atributos do objeto. A função exclui o atributo nomeado, desde que o objeto o permita. Por exemplo, `delattr(x, 'foobar')` é equivalente a `del x.foobar`.

Introdução

A função delattr() em Python é usada para excluir um atributo de um objeto. É o oposto de setattr() e getattr().

Sintaxe

delattr(object, name)
  • object: O objeto do qual o atributo deve ser excluído.
  • name: O nome do atributo a ser excluído, fornecido como uma string.

Exemplos

Excluindo um atributo de um objeto

class Person:
    name = "John"
    age = 30

person = Person()
print(person.__dict__)
delattr(person, "age")
print(person.__dict__)
{'name': 'John', 'age': 30}
{'name': 'John'}

Excluindo um atributo inexistente

class Person:
    name = "John"

person = Person()
try:
    delattr(person, "age")
except AttributeError as e:
    print(f"Error: {e}")
Error: age