2016-11-15 87 views
1

如何執行Python的list的所有子列表的字典對象的元素的工會: 例如:在子表1在pos 0聯盟蟒蛇

[ 
[ 
    {'a':'b'} 
], 
[ 
{ 'c':'d'} 
] 
] 

元素應該用在pos 0元素工會在子表2例OUTPUT:

[ 
    [ 
     { 
     'a':'b', 
     'c':'d' 
     } 

    ] 
    ] 
+0

所有子列表的大小是否相同? – Jason

+0

@Jason是的,每個子列表都將具有相同的大小 – anekix

回答

0

zip()了列表和merge_dicts()

def merge_dicts(*args): 
    r = {} 
    for d in args: 
     r.update(d) 
    return r 

>>> lst = [[{'a':'b'}],[{ 'c':'d'}]] 
>>> [merge_dicts(*ds) for ds in zip(*lst)] 
[{'a': 'b', 'c': 'd'}] 
>>> lst = [[{'a':'b'},{1:2}],[{'c':'d'},{3:4}],[{'e':'f'},{5:6}]] 
>>> [merge_dicts(*ds) for ds in zip(*lst)] 
[{'a': 'b', 'c': 'd', 'e': 'f'}, {1: 2, 3: 4, 5: 6}]