使用new_child()方法的打印效果是怎么回事?
from collections import * if __name__ == '__main__': print("hello world") dict1={"hello":1,"world":2} dict2={"hello":3,"java":3} dict4={"hello":5,"java":5} dict3=ChainMap(dict1,dict2) print(dict3) # maps:把ChainMap对象转化为list对象,可以被访问和修改。 print(dict3.maps) # new_child:在字典前插入一个新的字典,参数为空:插入一个空的字典。参数不为空,插入第一个位置。 #ChainMap({}, {'world': 2, 'hello': 1}, {'java': 3, 'hello': 3}) print(dict3.new_child()) #ChainMap({'java': 5, 'hello': 5}, {'world': 2, 'hello': 1}, {'java': 3, 'hello': 3}) print(dict3.new_child(dict4))
# new_child方法不会改变chain_map而使返回一个新的ChainMap
new_chain_map = chain_map.new_child({'aa':'aa', 'bb':'bb'})
for key, value in new_chain_map.items():
print(key, value)