コンピューター プログラミングの世界では、エラーが発生することはよくある現象です。 たとえば、 キーエラー: 'acc' in Python 。 このエラーは、辞書からアクセスしようとしている特定のキーが存在しない場合によく発生します。 幸いなことに、Python はそのような問題を処理し、コードのクラッシュを防ぐための雄弁なソリューションを提供します。 これには、例外処理プロシージャの適用、get() 関数の使用、またはアクセス前のキーのチェックが含まれます。 適切なアプローチをとれば、このエラーはうまく対処できます。
KeyError について
キーエラー Python の は、存在しないキーを使用して辞書にアクセスしようとしたときに発生する例外の一種です。 Python の公式ドキュメントに従って、値にアクセスする前にキーが存在するかどうかを確認することは常に良いコーディング方法です。
#Random example of KeyError dict1 = {"a":1,"b":2,"c":3} print(dict1["d"])
上記のコードでは、「d」は辞書 dict1 に存在しないため、結果は次のようになります。 キーエラー: 'd'.
KeyError の解決策: 'acc'
対処の解決策 キーエラー 実質的には、辞書から項目にアクセスする方法に当てはまります。 このエラーを回避できる XNUMX つの方法は、 取得する() キーを参照するときのメソッド。
その方法は次のとおりです。
#prints None instead of giving KeyError print(dict1.get("d"))
「d」が辞書にないため、コードは None を返します。 使用する 取得する() メソッドでは、キーが存在しない場合に返されるデフォルト値を提供することもできます。
#prints 'default' instead of None print(dict1.get("d", 'default'))
例外処理 KeyError を処理する別の手法です。 これは、以下に示すように、try-Except ブロックを使用して行うことができます。
try: # code that can raise an exception print(dict1["d"]) except KeyError: # Execute this code in case of KeyError print('Key does not exist')
このコードはプログラム全体を終了せず、「キーが存在しません」を出力することで例外を適切に処理します。これははるかにユーザーフレンドリーです。
コードをステップバイステップで説明する
KeyError の処理は複雑であるため、上記のコードを少しずつ分解することが重要です。
最初の例では、{'a': 1, 'b': 1, 'c': 2} のキーと値のペアを持つ 'dict3' という辞書を定義します。 次に、「dict1」に存在しないキー「d」にアクセスしようとします。 これにより、Python はメッセージとして「d」を含む KeyError を生成します。
XNUMX 番目の例では、get() メソッドを使用します。 この Python 辞書メソッドは、指定されたキーの値を取得します。 キーが存在しない場合、デフォルトでは「None」が返されます。 これにより、Python が KeyError を生成するのを防ぎます。
XNUMX 番目の例では、「なし」ではなく、デフォルト値「デフォルト」を設定して、有用なメッセージを取得します。 これは、キーが存在しないことを通知するためのより有益な方法です。
最後に、例外処理に Try-Except ブロックを使用します。 「try」の下にコードを記述し、「Except」の下で「KeyError」が発生した場合に何を行うかを定義します。 これにより、コードが壊れたりクラッシュしたりするのではなく、コードが陥った場合のセーフティ ネットが提供されます。
これらの戦術を Python プログラミングに実装すると、コーディング スキルの向上に大きく役立ちます。