Python从多个列表创建dict列表

Python从多个列表创建dict列表,python,Python,如何将列表转换为dict列表 发件人: 我想要: mylist= [ {'name':'Mary','age':15,'sex':'F'}, {'name':'Susan','age':30,'sex':'F'}, {'name':'John','age':20,'sex':'M'}, ] 这是zip函数的完美示例 给定: name = ['Mary','Susan','John'] age = [15,30,20] sex = ['

如何将列表转换为dict列表

发件人:

我想要:

mylist= [ {'name':'Mary','age':15,'sex':'F'},
          {'name':'Susan','age':30,'sex':'F'},
          {'name':'John','age':20,'sex':'M'},
          ]

这是
zip
函数的完美示例

给定:

name = ['Mary','Susan','John']
age = [15,30,20]
sex = ['F','F','M']
output = []
for item in zip(name, age, sex):
  output.append({'name': item[0], 'age': item[1], 'sex': item[2]})
[
  {'name': 'Mary', 'age': 15, 'sex': 'F'}, 
  {'name': 'Susan', 'age': 30, 'sex': 'F'}, 
  {'name': 'John', 'age': 20, 'sex': 'M'},
]
然后:

name = ['Mary','Susan','John']
age = [15,30,20]
sex = ['F','F','M']
output = []
for item in zip(name, age, sex):
  output.append({'name': item[0], 'age': item[1], 'sex': item[2]})
[
  {'name': 'Mary', 'age': 15, 'sex': 'F'}, 
  {'name': 'Susan', 'age': 30, 'sex': 'F'}, 
  {'name': 'John', 'age': 20, 'sex': 'M'},
]
将产生:

name = ['Mary','Susan','John']
age = [15,30,20]
sex = ['F','F','M']
output = []
for item in zip(name, age, sex):
  output.append({'name': item[0], 'age': item[1], 'sex': item[2]})
[
  {'name': 'Mary', 'age': 15, 'sex': 'F'}, 
  {'name': 'Susan', 'age': 30, 'sex': 'F'}, 
  {'name': 'John', 'age': 20, 'sex': 'M'},
]

对于列表理解,还有一种更短的方法:

output = [{'name': t[0], 'age': t[1], 'sex': t[2]} for t in zip(name, age, sex)]

下面是一个例子:

def Convert(a): 
    it = iter(lst) 
    res_dct = dict(zip(it, it)) 
    return res_dct 
      
# Driver code 
lst = ['a', 1, 'b', 2, 'c', 3]  
print(Convert(lst)) 

您可以将其用于代码。

最简单的方法是:

name=['Mary','Susan','John']
age=[15,30,20]
sex=['F','F','M']
list_dict = []
for i in range(0, len(name)):
    dict_temp = {}
    dict_temp['name'] = name[i]
    dict_temp['age'] = age[i]
    dict_temp['sex'] = sex[i]
    list_dict.append(dict_temp)

我假设所有列表的长度都是一样的。

你应该查看PandasTake查看一下
zip
到目前为止你试过什么吗?如果你把标签放在一个列表中,
键=['name','age','sex']
,和
zip
你的数据列表,
t=zip(姓名,年龄,性别)
,你可以使用“将列表列表转换为词典列表”。请参阅这是否回答了您的问题?