线字典到单

这个问题在这里已经有了答案:

  • 如何在单个表达式中合并两个字典? 48个答案

  • 假设你要求多个字典(不是多行字典)到一个字典。

    a = {1: 1, 2:2}
    b = {2:2, 3:3}
    c = {2:3}
    {**a, **b, **c}
    
    Out: {1: 1, 2: 3, 3: 3}
    

    假设你的初始数据实际上是一个字典列表,并且你的密钥在所有的字典中都是唯一的,我会使用类似 -

    example = [{'a':1}, {'b':2}, {'c':3}]
    
    objOut = {}
    for d in example:
        for k,v in d.iteritems():
            objOut[k] = v
    

    要么

    objIn = [{'a':1}, {'b':2}, {'c':3}]
    
    objOut = {}
    for d in objIn:
        objOut.update(d)
    
    
    print objOut
    

    特定

    dicts = [{'a':1}, {'b':2}, {'c':3, 'd':4}]
    

    {k:v for d in dicts for (k, v) in d.items()}
    

    要么

    from itertools import chain
    dict(chain(*map(dict.items, dicts)))
    

    导致

    {'a': 1, 'b': 2, 'c': 3, 'd': 4}
    
    链接地址: http://www.djcxy.com/p/17573.html

    上一篇: Line Dictionary to Single

    下一篇: Merge a dict in Python using 1 dict as base