通过迭代两个列表(列表推导)来列出dicts

时间:2016-07-25 14:09:01

标签: python list-comprehension

列表具有相同数量的元素,名称是唯一的。 我想知道,我怎样才能在一个动作中制作一个词典。

这是我目前的代码:

    fees = [fee for fee in fees]
    names = [name for name in names]
    mdict = [
        {'fees': fee[i], 'names': names[i]}
        for i, val in enumerate(fees)]

4 个答案:

答案 0 :(得分:3)

您可以在列表理解中的两个列表中使用zip

mdict = [{'fees': f, 'names': n} for f, n in zip(fees, names)]

答案 1 :(得分:1)

试试这个:

result = dict(zip(fees, names))

答案 2 :(得分:1)

你的意思是拉链?

dict(zip(fees, names))

答案 3 :(得分:1)

你想要这个

{fees[i]:y[i] for i in range(len(fees))}

或更确切:

dict(zip(fees, names))