次の辞書を考えます。
d = {"a":{"b":{"c":"winning!"}}}
私はこの文字列を持っています (外部ソースからのもので、この比喩を変更することはできません)。
k = "a.b.c"
辞書に key がある 'c'
かどうかを判断する必要があるため、ない場合は追加できます。
これは、ドット表記の値を取得するためにスムーズに機能します。
reduce(dict.get, key.split("."), d)
has_key
しかし、チェックなどを「減らす」方法がわかりません。
私の究極の問題は次のとおりです。与えられた場合、辞書に必要なすべての要素"a.b.c.d.e"
を作成する必要がありますが、それらが既に存在する場合はそれらを踏みにじる必要はありません。