
全捕捉例外ハンドラ(改訂版)
現在のコードは処理したい
2
つの例外(
FileNotFoundError
と
PermissionError
)を明示的に
指定し、(その他のすべてを処理する)汎用的な
except
ブロックを提供しています。
('
データファイルがありません。
')
('
許可されていません。
')
('
他のエラーが発生しました。
')
('
データファイルがありません。
')
('
許可されていません。
')
('
他のエラーが発生しました。
')
11
章 例外処理
you are here
431
...
Exception
+-- StopIteration
+-- StopAsyncIteration
+-- ArithmeticError
| +-- FloatingPointError
| +-- OverflowError
| +-- ZeroDivisionError
+-- AssertionError
+-- AttributeError
+-- BufferError
+-- EOFError
...
このコードは正しく動作
しますが、予期せぬ例外が
投げられたときには
たいした情報が得られません。
特定の例外を指定するときには、
except
キーワードの後に例外名を指定しました。
except
の後に特定の例外名だけでなく、この階層の任意の名前を使って例外のクラス
を指定することもできます。
例 え ば、( 明 ら か なゼ
ロ除 算 エラ ー では な く)数 学的 エラ ー が発 生 して い るか