1. TOP
  2. プログラム
  3. ソフト
  4. python
  5. エラー処理

エラー処理

2019-04-30_093425_GX1

例外

エラーが起きた時に実行されるコード 
リストやタプルに範囲外の位置を指定してアクセスしようとしたとき
存在しないキーで辞書にアクセスしようとした時です。
特定の条件のもとでは失敗するコードを実行するときには、適切な
例外ハンドラを作って、起きる可能性のあるエラーをすべてキャッチ
する必要がある。
プログラム内で独自のナドラーが用意できていなければ、次のコードが
示すように、pythonはエラーメッセージとエラー発生箇所についての情報
を出力し、プログラムを強制終了する。

>>>short_list = [1, 2, 3]
>>>position = 5
>>>short_list[position]


short_list[position]
IndexError: list index out of range


このように成り行きにまかせるのではなく、tryを使って例外が起きそう
場所を囲み、sxceptを使って例外処理をするべきだ。


>>>short_list = [1, 2, 3]
>>>position = 5
>>>try:
short_list[position]
>>>except:
print('Need a position between 0 and', len(short_list)-1,'
but got', position)



Need a position between 0 and 2 but got 5



tryブロックのコードは実行される。そこでエラーが起きると
例外が生成され、exceptブロックのコードが実行される。例外
が起きなければ、exceptブロックは実行されない。
ここで行っているように、引数なしのexceptを指定すると、あらゆる
例外型がキャッチされる。しかし、複数の例外が起きる可能性がある
ときには、それぞれのために別々の例外ハンドラを用意した方がよい。