Python の EAFP 原則とは何ですか? 質問する

Python の EAFP 原則とは何ですか? 質問する

Python で「EAFP 原則を使用する」とはどういう意味ですか? 例を挙げていただけますか?

ベストアンサー1

から用語集:

許可を求めるよりも許しを求める方が簡単。この一般的なPythonコーディングスタイルは、有効なキーまたは属性が存在することを前提とし、その前提が間違っている場合は例外をキャッチします。この簡潔で高速なスタイルは、多くのtryandexceptステートメントの存在が特徴です。このテクニックは、LBYLスタイルC などの他の多くの言語に共通です。

例としては、辞書キーにアクセスしようとすることが挙げられます。

EAFP:

try:
    x = my_dict["key"]
except KeyError:
    # handle missing key

LBYL:

if "key" in my_dict:
    x = my_dict["key"]
else:
    # handle missing key

LBYL バージョンでは、辞書内のキーを 2 回検索する必要があり、読みやすさが若干劣ると考えられるかもしれません。

おすすめ記事