logo

Python の AttributeError

エラーとは何ですか?

プログラミング言語では、コードを無効な方法で実行すると、メッセージが表示されてプログラムの実行が停止されます。このメッセージはエラーまたは例外と呼ばれます。プログラミング言語には、さまざまな理由による特定の種類のエラーが存在します。その一部は次のとおりです。

アサーションエラー:

このタイプのエラーは、コード内でアサーション条件またはステートメントが失敗した場合に発生します。

インポートエラー:

このエラーは、ファイルに何らかのモジュールをインポートし、そのモジュールが存在しない場合に発生します。

インデックスエラー:

これは、シーケンスのインデックスが範囲外の場合に発生します。

キーエラー:

このエラーは、Python で辞書内にキーが見つからない場合に発生します。

名前エラー:

Linuxディレクトリの名前を変更する

このエラーは、ローカルまたはグローバル スコープで変数が見つからない場合に発生する可能性があります。

ランタイムエラー:

このエラーは、エラーがどのタイプにも分類できない場合に発生します。

インデントエラー:

Python コードで間違ったインデントを使用すると、IndentationError が発生します。

システムエラー:

内部エラーが発生すると、インタープリタによって SystemError が発生します。

ユニコードエラー:

Unicode に関連するエンコードまたはデコード エラーが発生すると、UnicodeError が発生します。

値エラー:

関数内で、データ型に従って正しい引数を渡しても、値が適切ではない場合、発生したエラーは ValueError と呼ばれます。

ゼロディビジョンエラー:

ご存知のとおり、数学では、結果が無限大になる傾向があるため、数値をゼロで割ることはできません。したがって、ゼロ除算またはゼロによるモジュロに関するステートメントを作成した場合、発生するエラーは ZeroDivisionError になります。

EOFエラー:

input() 関数を使用してファイルから入力を取得し、ファイルの末尾に到達すると、ファイルの末尾に到達したため、何も取得できないことを示すこのエラーが発生します。ファイルからの入力。

この記事は主に AttributeError について説明します。

属性エラーとは何ですか?

このエラーは、属性の割り当てに条件エラーがある場合にプログラムで発生します。たとえば、整数変数に値を代入し、その変数から文字列関数を使用しようとすると、AttributeError が発生します。

Python で AttributeError が発生する理由は、次の例で理解できます。

例 1:

不可能な別のデータ型に関数を適用する場合

 a=15 a.append('javatpoint') 

出力:

Python の AttributeError

説明:

ハドゥープのチュートリアル

上記のコードでは、整数変数が 1 つあり、それを値 15 で初期化しています。 ここで、変数 a に対して append 関数を使用すると、追加する属性がないことを示す AttributeError が発生します。整数データ型で。

例2:

属性のスペルが間違っていると AttributeError が発生する可能性があります。

 string = 'you will learn each coding tutorial from '.fst('Javatpoint') print(string) 

出力:

Python の AttributeError

説明:

上記のコードでは、文字列属性があり、fst 属性を適用しているため、この属性が変数に存在しないという AttributeError が発生します。

例3:

クラス変数に対して間違った参照を作成しようとすると、AttributeError が発生する可能性があります。

 class Javatpoint(): def __init__(self): self.var1 = 'This is for JavatPoint' obj = Javatpoint() print(obj.var1) print(obj.var2) 

出力:

Python の AttributeError

説明:

上記のコードにはクラスがあり、var1 という名前の変数があります。クラスのオブジェクトを作成し、誤って存在しないクラスの間違った変数 var2 を参照してしまうため、間違いなく AttributeError が発生します。

エラーまたは例外に対処するための解決策:

Python または任意のプログラミング言語では、try ステートメントと else ステートメントを使用して例外またはエラー処理を使用できます。

例 4:

 class Javatpoint(): def __init__(self): self.var1 = 'This is for javatpoint' obj = Javatpoint() try: print(obj.var1) print(obj.var2) except AttributeError: print('There is no such attribute') 

出力:

Python の AttributeError

説明:

上記のコードには、クラスと var1 という名前の変数があります。 try ステートメントでは、var1 と var2 を参照しようとします。 var1 を逆参照でき、そのステートメントを出力しますが、var2 を参照すると AttributeError が発生します。したがって、プログラムは例外ブロックに入り、エラー条件に対してのみ記述されたステートメントを出力します。