KeyError: Python 辞書のキーワード エラーを解決するにはどうすればよいですか?

王林
リリース: 2023-06-24 15:26:13
オリジナル
3502 人が閲覧しました

Python プログラミングでは、辞書はキーと値のペアを格納するために使用される非常に一般的なデータ構造です。ディクショナリに存在しないキー値にアクセスしようとすると、KeyError 例外が発生します。この記事では、Python 辞書のキーワード エラーを解決するためのいくつかの方法を説明します。

  1. in 演算子を使用する

ディクショナリに存在しない可能性のあるキー値にアクセスする場合、in 演算子を使用して、キー値がディクショナリに存在するかどうかを判断できます。辞書。 。例:

my_dict = {"apple": 1, "banana": 2, "orange": 3} if "pear" in my_dict: print(my_dict["pear"]) else: print("The key 'pear' does not exist in the dictionary.")
ログイン後にコピー

上記のコードでは、まず辞書 my_dict を作成し、in 演算子を使用してキー値「pear」が辞書に存在するかどうかを判断します。キー値が存在しないため、プログラムはelse文ブロックを実行し、エラーメッセージを出力します。

  1. 辞書の get メソッドを使用する

in 演算子の使用に加えて、辞書の get メソッドを使用して KeyError 例外を回避することもできます。 get メソッドは 2 つのパラメーターを受け入れることができます。最初のパラメーターは検索するキー値で、2 番目のパラメーターはキー値が存在しない場合に返されるデフォルト値です。例:

my_dict = {"apple": 1, "banana": 2, "orange": 3} print(my_dict.get("pear", "The key 'pear' does not exist in the dictionary."))
ログイン後にコピー

上記のコードでは、get メソッドはまずキー値 "pear" が my_dict に存在するかどうかを確認します。キー値が存在しないため、get メソッドは 2 番目のパラメータを返します。はエラーメッセージです。文字列です。

  1. 例外処理メカニズムを使用する

KeyError 例外をカスタム処理したい場合は、Python の例外処理メカニズムを使用できます。例:

my_dict = {"apple": 1, "banana": 2, "orange": 3} try: print(my_dict["pear"]) except KeyError: print("The key 'pear' does not exist in the dictionary.")
ログイン後にコピー

上記のコードでは、try-excel ステートメント ブロックを使用して KeyError 例外をキャプチャし、カスタム エラー メッセージを出力します。

  1. コレクション モジュールでdefaultdictクラスを使用する

さらに、Pythonのコレクション モジュールでdefaultdictクラスを使用して、KeyError例外を回避することもできます。 defaultdict クラスは、デフォルト値を生成するパラメータとしてファクトリ関数を受け入れることができます。例:

from collections import defaultdict my_dict = defaultdict(lambda: "The key does not exist in the dictionary.") my_dict["apple"] = 1 my_dict["banana"] = 2 my_dict["orange"] = 3 print(my_dict["pear"])
ログイン後にコピー

上記のコードでは、defaultdict オブジェクト my_dict を作成し、デフォルト値を生成するパラメーターとしてラムダ関数に渡します。存在しないキー値「pear」にアクセスすると、辞書は KeyError 例外を発生させずに、ラムダ関数によって生成されたデフォルト値を自動的に返します。

要約すると、上記は Python 辞書のキーワード エラーを解決するためのいくつかの方法です。実際のプログラミングでは、状況に応じて適切な方法を選択して、KeyError 例外の発生を回避できます。

以上がKeyError: Python 辞書のキーワード エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!