対応する値が最小値を上回り、指定されたリストにある辞書内のすべてのキーを取得する必要があります。何かのように:リストのメンバーシップを確認するにはどうしたらいいですか?
result = [k for k in my_dict if my_dict[k] > min_value and k in allowed_keys]
しかし、私は許可されたキーに制限がない場合があります。私は、それを行う最もpythonicがallowed_keysをNoneに設定することがわかりました。しかし、これはコードの醜い部分で私を残すだろう:
if allowed_keys is None:
result = [k for k in my_dict if my_dict[k] > min_value]
else:
result = [k for k in my_dict if my_dict[k] > min_value and k in allowed_keys]
私は感覚的でpythonの解決策が必要なように感じる。私はラムダ関数を使うことを考えましたが、わかりません。何か案は?
可読性は、Pythonの半分よりも優れています。 – CppLearner
AFAIKは、pythonicであり、可読性に直接関係しています。 – erickrf