ChainMap是Python collections模块中的一个成员,它用来将多个map组合到一起。Chain是链条的意思,字面意思就是把map串联到一起。
示例代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# python3 import collections # 初始化字典 dict1 = { 'a' : 1, 'b' : 2 } dict2 = { 'b' : 3, 'c' : 4 } # 初始化ChainMap chain = collections.ChainMap(dict1, dict2) # 使用maps输出chainMap print(chain.maps) # [{'b': 2, 'a': 1}, {'b': 3, 'c': 4}] # 输出key print(list(chain.keys())) # ['b', 'c', 'a'] # 输出值 print(list(chain.values())) # [2, 4, 1] # 访问 print(chain['b']) # 2 print(chain.get('b')) # 2 # 使用new_child添加新字典 dict3 = { 'f' : 5 } new_chain = chain.new_child(dict3) print (new_chain.maps) # [{'f': 5}, {'b': 2, 'a': 1}, {'b': 3, 'c': 4}] new_chain.maps = reversed(new_chain.maps) print(new_chain.maps) |