如何将列表添加到字典?

时间:2018-10-29 21:55:13

标签: python list dictionary

如何将现有列表添加到字典中?

具体地说,如果我有:

lst = [["Hi"],["Monty"],["Python"],["snake"],["Anaconda"]]

我一直想得到:

d = {0: "Hi", 1: "Monty", 2: "Python", 3: "snake", 4: "Anaconda"}

我该怎么做?

4 个答案:

答案 0 :(得分:7)

dict(enumerate(lst))

是你的朋友!

在您的情况下:

dict(enumerate(itertools.chain.from_iterable((lst))))

答案 1 :(得分:1)

最简单的方法是使用dictionary comprehension。您可以使用enumerate函数获取子列表的索引。

lst = [["Hi"],["Monty"],["Python"],["snake"],["Anaconda"]]
d = {i: sublist[0] for i, sublist in enumerate(lst)}

您还可以使用for循环添加每个列表项。

d = {}
for i, sublist in enumerate(lst):
    d[i] = sublist[0]

答案 2 :(得分:0)

您可以使用enumerate

newdict = {}
for i, j in enumerate(lst):
    newdict[j] = i[0]
print(newdict)

答案 3 :(得分:0)

您有一个列表列表,其中每个内部列表都包含一个字符串。要将其变成仅包含字符串的字典,您将需要显式遍历每个项目。您可以通过字典理解来做到这一点。

d = {i: val[0] for i, val in enumerate(lst)}

d = {(i, val[0]) for i, val in enumerate(lst)}

在这里,我们使用val [0]遍历每个索引,内部列表对,将字符串从内部列表中移出。