collections の defaultdict と ChainMap を合わせて使う
wanna do
- こういう辞書を
d = {"a":1, "b",2}
- こう呼び出した時
d["c"]
- KeyError ではなくデフォルト値が入っていてほしい
example
from collections import defaultdict
import collections
existing_dict = {"a":1, "b":2}
default_dict = defaultdict(int)
merged_dict = collections.ChainMap(existing_dict, default_dict)
exe
Python 3.7.2 (default, Jan 13 2019, 12:50:01)
[Clang 10.0.0 (clang-1000.11.45.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from collections import defaultdict
>>> import collections
>>> existing_dict = {"a":1, "b":2}
>>> default_dict = defaultdict(int)
>>> merged_dict = collections.ChainMap(existing_dict, default_dict)
>>> merged_dict["a"]
1
>>> merged_dict["b"]
2
>>> merged_dict["c"]
0
>>> merged_dict["d"]
0
p.s
- もしかしたらものすごく迂遠なことをやっていないだろうか
- 何か変だったら白ヤギさんからお手紙ください
Original by Github issue
チャットメンバー募集
何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。