如何用python将列表转换为字典

如何用python将列表转换为字典,python,list,dictionary,Python,List,Dictionary,我要将列表转换为新列表 key=['id','frame','length'] old_list = [ ['ID0', 'ID1'], ['4', '8'], ['5', '6'] ] 以下是一种单线方法: new_list=[] for x,y,z in zip(old_list[0],old_list[1], old_list[2]): dict = {'id' : x, 'frame' : y, 'length': z} new_list.append(dict) 让

我要将列表转换为新列表

key=['id','frame','length']

old_list = [ ['ID0', 'ID1'], ['4', '8'], ['5', '6'] ]

以下是一种单线方法:

new_list=[]
for x,y,z in zip(old_list[0],old_list[1], old_list[2]):
    dict = {'id' : x, 'frame' : y, 'length': z}
    new_list.append(dict)

让我们看看你试过什么。有1000个类似的问题和答案。。。我认为一个更好的问题是如何在一行中完成它。你可以通过列表理解将它简化为一行:
new\u list=[{'id':x,'frame':y,'length':z}对于zip中的x,y,z(old\u list[0],old\u list[1],old\u list[2])
right,列表理解很好。很抱歉,当我在几秒钟内尝试新的代码行时,我使用了基本表单,最后我留下了列表理解,以优化代码。谢谢你发了通讯员名单。
new_list=[]
for x,y,z in zip(old_list[0],old_list[1], old_list[2]):
    dict = {'id' : x, 'frame' : y, 'length': z}
    new_list.append(dict)
>>> [{'id':x, 'frame':y, 'length':z} for x,y,z in zip(*old_list)]
[{'length': '5', 'frame': '4', 'id': 'ID0'}, {'length': '6', 'frame': '8', 'id': 'ID1'}]