collections.ChainMap 该类型可以容纳数个不同的映射对象,然后在进行键查找操作的时候,这些对象会被当作一个整体被逐个查找,直到键被找到为止。
1 # -*- coding: utf-8 -*- 2 szServers = { 3 ‘192.168.1.1‘: ‘online‘, 4 ‘192.168.1.2‘: ‘online‘, 5 ‘192.168.1.3‘: ‘offline‘, 6 ‘192.168.1.4‘: ‘offline‘, 7 } 8 hzServers = { 9 ‘192.168.1.5‘: ‘online‘, 10 ‘192.168.1.6‘: ‘online‘, 11 ‘192.168.1.7‘: ‘offline‘, 12 ‘192.168.1.8‘: ‘offline‘, 13 } 14 15 from collections import ChainMap 16 merged = ChainMap(szServers, hzServers) #多个字典合并 17 print(merged[‘192.168.1.1‘]) 18 hz_servers[‘192.168.1.9‘] = ‘online‘ 19 print(merged[‘192.168.1.9‘]) #有意思的是新添加的字典原素也会查找
输出结果:
online
online
原文:https://www.cnblogs.com/hell-west-road/p/11332673.html