PythonのException(例外エラー) AttributeError

AttributeErrorは、Pythonの例外ヒエラルキーの一部で、オブジェクトの属性へのアクセスに関連するエラーが発生した場合に発生する例外です。具体的には、存在しない属性にアクセスしようとしたり、属性が存在しないオブジェクトにアクセスしようとしたりすると、AttributeErrorが発生します。

以下は、AttributeErrorのいくつかの例です:

  1. 存在しない属性へのアクセス:

    python
    class MyClass: def __init__(self): self.my_attribute = 42 obj = MyClass() print(obj.my_attribute) # 存在する属性にアクセス print(obj.non_existent_attribute) # 存在しない属性にアクセス (AttributeError)
  2. 存在しない属性への代入:

    python
    class MyClass: def __init__(self): self.my_attribute = 42 obj = MyClass() obj.my_attribute = 100 # 存在する属性に代入 obj.non_existent_attribute = 200 # 存在しない属性に代入 (新しい属性が作成される)
  3. 存在しない属性の削除:

    python
    class MyClass: def __init__(self): self.my_attribute = 42 obj = MyClass() del obj.my_attribute # 存在する属性を削除 del obj.non_existent_attribute # 存在しない属性を削除 (AttributeError)

AttributeErrorは、オブジェクトの属性にアクセスし、それが存在しない場合にエラー処理を行うのに役立ちます。通常、hasattr()関数を使用して属性が存在するかどうかを事前に確認することが推奨されます。