Python - 将嵌套列表转换为字典

Mos*_*man 1 python dictionary list

我有一个嵌套列表,如何将其转换为字典

data = [["Employee","Salary","Age","Gender"],["001",1200,25,"M"],["002",1300,28,"M"],["003",1400,32,"M"],["004",1700,44,"F"]]
Run Code Online (Sandbox Code Playgroud)

字典应该在下面阅读

dict = {'Employee':['001','002','003','004'],'Salary':[1200,1300,1400,1700],'Age':[25,28,32,44],'Gender':['M','M','M','F']}
Run Code Online (Sandbox Code Playgroud)

我试图更改为Pandas DataFrame并将其转换为字典.但我正在寻找从列表到字典的直接转换

非常感谢您的帮助.在Python 3中期待答案

jpp*_*jpp 10

一种方法是使用zip,它按顺序迭代每个列表的第i个元素:

data = [["Employee","Salary","Age","Gender"],
        ["001",1200,25,"M"],
        ["002",1300,28,"M"],
        ["003",1400,32,"M"],
        ["004",1700,44,"F"]]

d = {k: v for k, *v in zip(*data)}
Run Code Online (Sandbox Code Playgroud)

*v按照@ Jean-FrançoisFabre的建议拆包,确保您的价值列表.

结果

{'Age': [25, 28, 32, 44],
 'Employee': ['001', '002', '003', '004'],
 'Gender': ['M', 'M', 'M', 'F'],
 'Salary': [1200, 1300, 1400, 1700]}
Run Code Online (Sandbox Code Playgroud)

另一种方法是使用pandas:

import pandas as pd

df = pd.DataFrame(data[1:], columns=data[0]).to_dict('list')

# {'Age': [25, 28, 32, 44],
#  'Employee': ['001', '002', '003', '004'],
#  'Gender': ['M', 'M', 'M', 'F'],
#  'Salary': [1200, 1300, 1400, 1700]}
Run Code Online (Sandbox Code Playgroud)