Pythonお悩み解決

Pythonに関する疑問や悩みにこたえるブログです

【エラー解説】KeyErrorとは?原因と対応方法

今回はPythonKeyErrorについて解説します。

1. KeyErrorとは

KeyErrorPythonの組み込み例外の1つで、 「存在しないキーが指定された」 というエラーです。

このエラーは、主に辞書を使った場合に発生します。

簡単に辞書についておさらいしましょう。

以下のように、辞書の要素は「キーのペア」です。

>>> book = {"title": "沈黙の春", "author": "レイチェル カーソン"}

辞書の要素にはキーを使ってアクセスします。

>>> book["title"]
'沈黙の春'
>>> book["author"]
'レイチェル カーソン'

しかし、このキーの指定を間違えるとKeyErrorが発生します。

2. KeyErrorが発生するケース

では、実際にKeyErrorが発生するコード例をみてみましょう。

>>> book["price"]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'price'

こちらは存在しないキー"price"を指定しています。

このように存在しないキーを指定すると、KeyErrorが発生します。

もう1つ例を見てみましょう。

>>> book["authar"]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'authar'

こちらは存在するキー"author"を指定したつもりでしたが、よく見るとスペルミスで"authar"となっています。

このように、入力ミスでキーの指定を間違え、KeyErrorが発生する場合もあります。

3. KeyErrorの対応方法

KeyErrorの原因は、存在しないキーを指定したことです。

そのため、KeyErrorが発生したら、正しいキーを指定しているかを確認しましょう。

一見、正しいキーを指定しているように見えても、入力ミスで「1文字だけ違う」ということもあるので気をつけましょう。

4. まとめ

  • KeyErrorは存在しないキーを指定した場合に起きるエラー
  • KeyErrorが発生したら、キーの指定が正しいかを確認する