Pythonの例外にErrorという名前が付けられているのはなぜですか(ZeroDivisionError、NameError、TypeErrorなど)?
ほとんどの例外の名前は「エラー」で終わり、エラーであることを示しています。これはとにかく例外の意味です。
制限された意味でのエラーは、Pythonの構文エラーを意味すると解釈され、実行時に発生するエラーは例外と呼ばれます。クラスの名前に「クラス」が含まれていないことはわかっています。同様に、変数には「変数」などで終わる名前はありません。したがって、例外の名前が「例外」という単語で終わる必要はありません。
このことを考慮;すべての例外がエラーであるとは限りません。 SystemExit、KeyboardInterrupt、StopIteration、GeneratorExitはすべて例外であり、エラーではありません。実際、Warningという名前の例外クラスから派生した例外がいくつかあります。
「エラー」という単語を使用して例外に名前を付ける良い動機の1つは、長さが「例外」よりも短く、意味を失うことなくコード内の文字数を節約できることです。
-
Pythonでの例外処理のベストプラクティスは何ですか?
Pythonでの例外処理のベストプラクティスのいくつかを以下に示します。 例外は、エラーステータスコードを返すよりも優れています。言語コア全体と標準ライブラリが例外をスローするため、Pythonで例外を処理する必要があります。エレガントに処理された例外は、エラーコードやトレースバックよりもいつでも望ましいです。 フロー制御に例外を使用しないのが賢明です。 例外は、通常の実行の一部ではない例外的な状況で発生します。 パターンが見つからない場合は-1を返す文字列の「find」を検討してください。ただし、文字列の終わりを超えてインデックスを作成すると、例外が発生します。文字列が見つからないの
-
Python関数はなぜ、どのようにハッシュ可能ですか?
オブジェクトがその存続期間中同じままであるハッシュ値を持っている場合、そのオブジェクトはハッシュ可能であると言われます。 __hash __()メソッドがあり、他のオブジェクトと比較できます。このためには、__ eq __()または__cmp __()メソッドが必要です。比較したときにハッシュ可能なオブジェクトが等しい場合、それらは同じハッシュ値を持ちます。 これらのデータ構造は内部でハッシュ値を使用するため、ハッシュ可能であると、オブジェクトが辞書キーおよびセットメンバーとして使用可能になります。 Pythonのすべての不変の組み込みオブジェクトはハッシュ可能です。リストや辞書などの可変