如何从两个列表创建字典?

时间:2016-01-22 02:27:18

标签: python list dictionary

我有两个不同的列表,我需要它们像这样显示。我觉得我很接近,但程序不起作用。另外,zip的版本在这里对我不起作用。

>>> list_to_dict(["a", "b"], ["13", "7" ])
{ "a": "13", "b": "7" }

这就是我现在所拥有的:

def lists_to_dict():
    x = ['a', 'b']
    y = ['13', '7']
    d = {}
    for i in range(len(x)):
        d[x[i]] = y[i]
    return d

lists_to_dict()

3 个答案:

答案 0 :(得分:3)

dict(zip(x,y))应该就是您所需要的一切。

答案 1 :(得分:0)

相同的无拉链解决方案被重新包装为理解:

def lists_to_dict(k, v):
    return { k[i]: v[i] for i in range(min(len(k), len(v))) }

>>> lists_to_dict(['a', 'b'], [13, 7])
{'a': 13, 'b': 7}

答案 2 :(得分:-1)

>>> a = ["a", "b"]
>>> b = ["13", "7" ]
>>> print dict(zip(a,b)) 
{'a': '13', 'b': '7'}
>>>