将 2 元素列表转换为字典

Convert 2 element list into dict

我知道这里回答的关于 dict(list) 的问题很少,即

l = [['a',1] ['b',2]]

并执行 dict(l) 然后我们得到:

{'a': 1, 'b': 2}

但是如何创建包含 2 个元素的列表

l = ['a',1]

变成字典如:

{'a':1}

使用dict函数?

dict 需要一个包含两项的可迭代对象,因此您需要将 l 放入列表中:

>>> l = ['a',1]
>>> dict([l])
{'a': 1}
>>>

请注意,您也可以使用元组:

>>> l = ['a',1]
>>> dict((l,))
{'a': 1}
>>>

这适用于列表中的多个元素

>>> l = ['a',1,'b',2]
>>> i = [(l[i],l[i+1]) for i in range(0,len(l),2)]
>>> dict(i)
{'a': 1, 'b': 2}

对于一个元素,dict([l]) 会起作用。对于扁平列表中的多个 key/value 对,您可以使用 zip():

In [5]: l = ['a', 1, 'b', 2]

In [6]: dict(zip(l[::2], l[1::2]))
Out[6]: {'a': 1, 'b': 2}