エラーとは何ですか?
プログラミング言語では、コードを無効な方法で実行すると、メッセージが表示されてプログラムの実行が停止されます。このメッセージはエラーまたは例外と呼ばれます。プログラミング言語には、さまざまな理由による特定の種類のエラーが存在します。その一部は次のとおりです。
アサーションエラー:
このタイプのエラーは、コード内でアサーション条件またはステートメントが失敗した場合に発生します。
インポートエラー:
このエラーは、ファイルに何らかのモジュールをインポートし、そのモジュールが存在しない場合に発生します。
インデックスエラー:
これは、シーケンスのインデックスが範囲外の場合に発生します。
キーエラー:
このエラーは、Python で辞書内にキーが見つからない場合に発生します。
名前エラー:
Linuxディレクトリの名前を変更する
このエラーは、ローカルまたはグローバル スコープで変数が見つからない場合に発生する可能性があります。
ランタイムエラー:
このエラーは、エラーがどのタイプにも分類できない場合に発生します。
インデントエラー:
Python コードで間違ったインデントを使用すると、IndentationError が発生します。
システムエラー:
内部エラーが発生すると、インタープリタによって SystemError が発生します。
ユニコードエラー:
Unicode に関連するエンコードまたはデコード エラーが発生すると、UnicodeError が発生します。
値エラー:
関数内で、データ型に従って正しい引数を渡しても、値が適切ではない場合、発生したエラーは ValueError と呼ばれます。
ゼロディビジョンエラー:
ご存知のとおり、数学では、結果が無限大になる傾向があるため、数値をゼロで割ることはできません。したがって、ゼロ除算またはゼロによるモジュロに関するステートメントを作成した場合、発生するエラーは ZeroDivisionError になります。
EOFエラー:
input() 関数を使用してファイルから入力を取得し、ファイルの末尾に到達すると、ファイルの末尾に到達したため、何も取得できないことを示すこのエラーが発生します。ファイルからの入力。
この記事は主に AttributeError について説明します。
属性エラーとは何ですか?
このエラーは、属性の割り当てに条件エラーがある場合にプログラムで発生します。たとえば、整数変数に値を代入し、その変数から文字列関数を使用しようとすると、AttributeError が発生します。
Python で AttributeError が発生する理由は、次の例で理解できます。
例 1:
不可能な別のデータ型に関数を適用する場合
a=15 a.append('javatpoint')
出力:
説明:
ハドゥープのチュートリアル
上記のコードでは、整数変数が 1 つあり、それを値 15 で初期化しています。 ここで、変数 a に対して append 関数を使用すると、追加する属性がないことを示す AttributeError が発生します。整数データ型で。
例2:
属性のスペルが間違っていると AttributeError が発生する可能性があります。
string = 'you will learn each coding tutorial from '.fst('Javatpoint') print(string)
出力:
説明:
上記のコードでは、文字列属性があり、fst 属性を適用しているため、この属性が変数に存在しないという AttributeError が発生します。
例3:
クラス変数に対して間違った参照を作成しようとすると、AttributeError が発生する可能性があります。
class Javatpoint(): def __init__(self): self.var1 = 'This is for JavatPoint' obj = Javatpoint() print(obj.var1) print(obj.var2)
出力:
説明:
上記のコードにはクラスがあり、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')
出力:
説明:
上記のコードには、クラスと var1 という名前の変数があります。 try ステートメントでは、var1 と var2 を参照しようとします。 var1 を逆参照でき、そのステートメントを出力しますが、var2 を参照すると AttributeError が発生します。したがって、プログラムは例外ブロックに入り、エラー条件に対してのみ記述されたステートメントを出力します。