Python での例外処理 4-1

Python の例外とは、構文エラーはないが、コードの実行時にエラーが発生する状況を指します。

1 スロー例外

図 1 に示すコードでは、ユーザーに数値の入力を求めていますが、コードの構文的には何も間違っていません。

図 1 例外コード

ただし、このコードを実行した後、ユーザーが数値を入力すると、プログラムは正常に実行され、while True ループは引き続きユーザーに数値の入力を求めますが、入力が数値ではない場合、プログラムはエラーを表示します。というメッセージが表示され、while True ループが終了します。実際、例外が発生すると、プログラム全体が終了します。

2 例外を処理するには try...以外を使用します

Try...Except ステートメントを使用して例外を処理し、実行するコードを try ブロックに配置し、例外処理コードを例外ブロックに配置できます。例外処理コードは、入力が数値ではない場合を指します。それに対処する方法。コードは次のようになります。

図 2 例外処理を追加するコード

図 2 からわかるように、入力が数値ではない場合、プログラムは例外をスローし、その例外は例外ステートメントによってキャッチされます。例外をキャッチした後、プログラムはエラーを報告しなくなり、例外ブロック内のコード。while True ステートメントが使用されているため、ユーザーは数値を再度入力するように求められ、ユーザーが正しい数値を入力するまで while ループは終了しません。

3 例外処理なしと例外処理の違い

コードの実行中に例外が発生した場合、この例外がスローされます。コード内に例外処理がない場合、スローされた例外は Python によって処理されます。このとき、図 1 の赤いエラー メッセージが表示され、プログラムが終了します。コード内に例外処理がある場合、例外は Python に渡されません。Python が処理しますが、例外ブロック内のコードによって処理されます。処理が完了した後、図 3 に示すように、プログラムは実行を継続します。

図 3 例外処理なしと例外処理の違い

おすすめ

転載: blog.csdn.net/hou09tian/article/details/132733319