エラー辞典

LookupError

「探そうとした値が見つからない」系のエラーの親分類です。IndexErrorとKeyErrorは、実はこのLookupErrorの仲間(サブクラス)です。

原因

直接このエラー名を目にすることは少なく、通常はIndexErrorやKeyErrorとして具体的に発生します。

エラーになるコード例

data = {'a': 1}
try:
    print(data['b'])
except LookupError:
    print('見つかりませんでした')
KeyError: 'b' (LookupErrorとしてもキャッチできる)

修正版

data = {'a': 1}
try:
    print(data['b'])
except KeyError:
    print('キーが見つかりませんでした')

よくある間違い

  • IndexErrorとKeyErrorの両方をまとめて処理したいときに、この親クラスの存在を知らず個別に書いてしまう
  • 具体的なエラー名が分かる場面でも、必要以上に曖昧な親クラスでキャッチしてしまう

← エラー辞典に戻る