delattr() Excluir atributo de objeto
Última atualização: 2026-09-22
delattr() Excluir atributo de objeto
delattr(obj, name) exclui o atributo name de obj; equivalente a del obj.name.
| Categoria | Funções internas |
|---|---|
| Tipo | Função interna |
| Versão do Python | all |
📝 Sintaxe
delattr(object, name)
⚙️ Parâmetros
| object Obrigatório | The object to delete the attribute from. |
|---|---|
| name Obrigatório | The attribute name as a string. |
Retorno:None.
💥 Exceções
AttributeError— Raised when the attribute does not exist or cannot be deleted.TypeError— Raised when name is not a string.
▶ Exemplo
Edite o código, clique em Executar e veja o resultado no painel de saída:
Saída:
False
🏷️ Funções internas relacionadas
💡 Casos relacionados
Mais estudos de caso em breve — aguarde.
❓ Perguntas frequentes
QQual é a diferença entre delattr(obj, 'x') e del obj.x?
ASão totalmente equivalentes. A vantagem de delattr é que o nome do atributo pode ser uma variável ou string dinâmica, adequado a cenários de remoção por nome.
QO que acontece ao excluir um atributo inexistente?
ALevanta AttributeError, igual a del obj.nonexist; use hasattr() para verificar antes de excluir.
Qdelattr pode excluir um método?
ASim. Um método também é um atributo de classe; após delattr(classe, 'method'), chamar esse método na instância levanta AttributeError.
QO argumento name deve ser de que tipo?
ADeve ser uma string; passar outro tipo (como número) levanta TypeError.