Python delattr() ビルトイン関数

Python 3 ドキュメントより

これは `setattr()` の仲間です。引数はオブジェクトと文字列です。文字列はオブジェクトの属性のいずれかの名前でなければなりません。この関数は、オブジェクトが許可する場合、指定された属性を削除します。例えば、`delattr(x, 'foobar')` は `del x.foobar` と同等です。

導入

Python の delattr() 関数は、オブジェクトから属性を削除するために使用されます。これは setattr() および getattr() の対応する関数です。

構文

delattr(object, name)
  • object: 属性を削除する対象のオブジェクト。
  • name: 削除する属性の名前。文字列として指定します。

オブジェクトから属性を削除する

class Person:
    name = "John"
    age = 30

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

存在しない属性を削除する

class Person:
    name = "John"

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

関連リンク