このクラスcollections.defaultdict
は、デフォルト値を生成するために使用されるデフォルトファクトリを取ります。
dict
-likeオブジェクトに含まれる値のデフォルトをFalse
にする必要がある場合、インスタンスは次のように作成できます。
d_false = defaultdict(bool)
デフォルト値の同じことを達成するための最もpythonicな方法は何True
ですか?
言い換えると、標準の呼び出し可能なオブジェクトが返さTrue
れるのbool
ですか?
もちろん、ファクトリーはラムダ式として構築できます。
d_true = defaultdict(lambda: True)
しかし、これは車輪を再発明するかもしれません。
:うーん、私はすべての組み込み型のコンストラクタはfalsy値を返すと思う
—
wjandrea
int() == 0
、list() == []
、str() == ''
、など私はこれを行うための標準的な方法はないと思うので。
lambda: value
構築物は、静的なデフォルト値で辞書を構築するための慣用的なPython的な方法です。関数を返す簡単な方法は知らないTrue
。
—
wjandrea
lambda: True
そのdefaultdictをピクルスにする必要がない限り問題ありません。