我有一个从 yaml 转换过来的字典列表,但我如何将它们合并到一个新列表中?
我想合并这个;
ip_service_list = [{'192.168.15.90': {'process': {'nginx': 1}}}, {'192.168.15.90': {'process': {'varnish': 1}}}, {'192.168.15.91': {'process': {'tomcat': 1}}}]
变成这样;
{
'192.168.15.90':
{'process': {'nginx': 1,'varnish': 1}}},
'192.168.15.91':
{'process': {'tomcat': 1}
}
请您参考如下方法:
from collections import defaultdict
# the structure we try to fill is in the lambda
d = defaultdict(lambda:{'process' : {}})
for row in s:
# just one iteration, aka ip = next(iter(row))
for ip in row:
d[ip]['process'].update(row[ip]['process'])
print d
