PythonのKeyErrorとその対処法
Pythonで辞書型(dict)を扱うとき、存在しないキーを参照しようとするとKeyErrorが発生します。
このエラーは、辞書に指定したキーが存在しないために発生します。
Pythonのエラー一覧はコチラ
-
【Python】よく起こるエラー一覧 11個のPythonのエラー事例と対処方法を確認して、適切に対処しよう!
ChatGPTのAPIを使わずに自動化することが可能です。 下記の本を読めば、ChatGPT4でも料金掛からずに自動化できます!KindleUnlimited会員であれば無料で読めます。 Python ...
続きを見る
KeyErrorの例と対処法1
以下のコードはKeyErrorを引き起こします。
1 2 |
my_dict = {'apple': 1, 'banana': 2} print(my_dict['cherry']) |
このエラーを解決するためには、辞書にキーが存在することを確認した上で参照するようにします。
以下のように修正します。
1 2 3 |
my_dict = {'apple': 1, 'banana': 2} if 'cherry' in my_dict: print(my_dict['cherry']) |
KindleUnlimited会員であれば、全ての本をご覧頂けます。 リストとラムダ式を理解すれば、Pythonプログラミングの世界が変わる 第1版
KeyErrorの例と対処法2
以下のコードもKeyErrorを引き起こします。
1 2 |
my_dict = {'apple': 1, 'banana': 2} print(my_dict.get('cherry')) |
[st-kaiwa2]ここでは、'get'メソッドを使ってキーを取得しようとしているけど、'cherry'がないからNoneが返るんだ。
このエラーを解決するためには、getメソッドを使うときにデフォルト値を設定します。
以下のように修正します。
1 2 |
my_dict = {'apple': 1, 'banana': 2} print(my_dict.get('cherry', 0)) |
[st-pre myclass="st-terminal" text="出力結果" webicon="st-svg-terminal"]
0 [/st-pre] [st-kaiwa1]こうすれば、'cherry'がないときは0が出力されるから、エラーは起こらないね。
KeyErrorの例と対処法3
以下のコードもまたKeyErrorを引き起こします。
1 2 3 |
my_dict = {'apple': 1, 'banana': 2} for key in ['apple', 'banana', 'cherry']: print(my_dict[key]) |
[st-kaiwa3]ここでは、ループでキーを取り出しているけど、'cherry'がないからエラーになってしまっているね。
このエラーを解決するためには、ループでキーを取り出す前に辞書にキーが存在することを確認するようにします。
以下のように修正します。
1 2 3 4 |
my_dict = {'apple': 1, 'banana': 2} for key in ['apple', 'banana', 'cherry']: if key in my_dict: print(my_dict[key]) |
[st-kaiwa4]これなら、辞書にキーが存在する場合だけ出力するからエラーは起こらないね。
KeyErrorの例と対処法4
以下のコードもKeyErrorを引き起こします。
1 2 3 |
my_dict = {'apple': 1, 'banana': 2} for key in ['apple', 'banana', 'cherry']: print(my_dict[key]) |
[st-kaiwa1]またまたループでキーを取り出している例だけど、やっぱり'cherry'がないからエラーになってしまっているね。
このエラーを解決するためには、getメソッドを使ってキーを取り出すときにデフォルト値を設定します。
以下のように修正します。
1 2 3 |
my_dict = {'apple': 1, 'banana': 2} for key in ['apple', 'banana', 'cherry']: print(my_dict.get(key, 0)) |
[st-pre myclass="st-terminal" text="出力結果" webicon="st-svg-terminal"]
1 2 0 [/st-pre] [st-kaiwa4]こうすれば、'cherry'がないときでも0が出力されるから、エラーは起こらないね。
KeyErrorの例と対処法5
以下のコードもまたKeyErrorを引き起こします。
1 2 |
my_dict = {'apple': 1, 'banana': 2} del my_dict['cherry'] |
[st-kaiwa2]'del'を使って'cherry'を削除しようとしているけど、'cherry'がないからエラーになってしまっているね。
このエラーを解決するためには、削除する前に辞書にキーが存在することを確認します。
以下のように修正します。
1 2 3 |
my_dict = {'apple': 1, 'banana': 2} if 'cherry' in my_dict: del my_dict['cherry'] |
[st-kaiwa4]これなら、'cherry'が辞書に存在する場合だけ削除するからエラーは起こらないね。
まとめ
PythonのKeyErrorは、存在しないキーを参照しようとしたときに発生します。
これは、辞書に指定したキーが存在しないために発生します。
辞書のキーの存在チェックやgetメソッドの使用、削除前のチェックなど、様々な方法でエラーを回避することが可能です。
これらの方法を使って、KeyErrorを回避し、Pythonプログラミングをスムーズに進めましょう。
最後まで読んで頂き、ありがとうございました。少しでもお役にたてたなら幸いです!
[st-kaiwa4]最後まで読んでくれてありがとう!!
Pythonのエラー一覧はコチラ
-
【Python】よく起こるエラー一覧 11個のPythonのエラー事例と対処方法を確認して、適切に対処しよう!
ChatGPTのAPIを使わずに自動化することが可能です。 下記の本を読めば、ChatGPT4でも料金掛からずに自動化できます!KindleUnlimited会員であれば無料で読めます。 Python ...
続きを見る