我有两个清单: 首先是键列表, 第二个是具有列表的值列表。 我想列出字典,但我不知道那样做。

keys=['number','type']
values=[[1,2,3,4],['bool','int','float','double']]

我正在尝试做点什么,但是与此同时我正处于死亡的境地。

j=0
for k in keys:
    i=0
    for v in values[j]:
        a=keys[j]
        a=a+':'
        a=a+str(values[j][i])
        print(a)
        i=i+1
    j=j+1

我想要这样的输出:

list=[
    {'number':1,'type':'bool'},
    {'number':2,'type':'int'},
    {'number':3,'type':'float'},
    {'number':4,'type':'double'}]
分析解答
keys=['number','type']
values=[[1,2,3,4],['bool','int','float','double']]

newList = []
for i in range(len(values[0])):
    tmp = {}
    for j, key in enumerate(keys):
        tmp[key] = values[j][i]

    newList.append(tmp)

print(newList)

输出:

[{'number': 1, 'type': 'bool'}, {'number': 2, 'type': 'int'}, {'number': 3, 'type': 'float'}, {'number': 4, 'type': 'double'}]

未来的提示:您可以使用enumerate(list)代替i = i+1i += 1