
例外処理
try
は
1
つだが、
except
はいくつも追加できる
別の例外から守るためには、単に
try
文に別の
except
ブロックを追加し、問題の
例外を特定して新しい
except
のブロックに必要と思われるコードを書きます。次は
(
PermissionError
例外が投げられた場合に)
PermissionError
例外を処理で
きるコードです。
('
データファイルがありません。
')
('
許可されていません。
')
許可されていません。
426
11
章
修正されたコードを実行しても、やはり
PermissionError
例外となりますが、修
正前と比べ、不快なトレースバックはずっとわかりやすいメッセージとなっています。
この部分は
FileNotFoundError
例外だけでなく
PermissionError
も
処理します。
except
ブロックは
何でも実行できます。
現在はそれぞれわかり
やすいメッセージを
表示しています。
ずっとよくなりました。
これはよさそうです。該当ファイルがない場合やアクセスできない(適切な権限を
持っていない)場合に対応できています。しかし、予想していなかった例外が投げられ
たらどうなるでしょうか?