Python の辞書のキーエラーを修正する
    
    Vaibhav Vaibhav
    2022年4月12日
    
    Python
    Python Error
    
辞書は、Python で利用できるスケーラブルなデータ構造です。キーと値のペアの形式でデータを格納します。キーはハッシュ可能で不変のオブジェクトであり、値は何でもかまいません。リスト、タプル、辞書、オブジェクトのリストなど。
キーを使用して、これらのキーが指している値にアクセスできます。存在しないキーがディクショナリに指定されると、KeyError 例外がスローされます。この記事では、Python でこの例外を処理する方法を学習します。
Python の辞書の KeyError 例外を修正
KeyError 例外を解決するために、キーにアクセスする前に、キーが辞書に存在するかどうかを確認できます。keys() メソッドは、ディクショナリ内のキーのリストを返します。キーの値にアクセスする前に、キーの存在が不明な場合は、このリストにキーが存在するかどうかを確認することをお勧めします。次の Python コードは同じものを表しています。
data = {
    "a": 101,
    "b": 201,
    "c": 301,
    "d": 401,
    "e": 501,
}
keys = ["a", "e", "r", "f", "c"]
for key in keys:
    if key in data.keys():
        print(data[key])
    else:
        print(f"'{key}' not found.")
出力:
101
501
'r' not found.
'f' not found.
301
上記のアプローチとは別に、try...except ブロックを使用して、KeyError 例外または任意の例外をキャッチすることもできます。同じことについては、次の Python コードを参照してください。
data = {
    "a": 101,
    "b": 201,
    "c": 301,
    "d": 401,
    "e": 501,
}
keys = ["a", "e", "r", "f", "c"]
for key in keys:
    try:
        print(data[key])
    except:
        print(f"'{key}' not found.")
出力:
101
501
'r' not found.
'f' not found.
301
KeyError 例外が発生すると、except ブロックの下のコードが実行されます。
        チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe
    
著者: Vaibhav Vaibhav
    
関連記事 - Python Error
- AttributeError の解決: 'list' オブジェクト属性 'append' は読み取り専用です
 - AttributeError の解決: Python で 'Nonetype' オブジェクトに属性 'Group' がありません
 - AttributeError: 'generator' オブジェクトに Python の 'next' 属性がありません
 - AttributeError: 'numpy.ndarray' オブジェクトに Python の 'Append' 属性がありません
 - AttributeError: Int オブジェクトに属性がありません
 - AttributeError: Python で 'Dict' オブジェクトに属性 'Append' がありません
 
