Python 如何将未知编号的嵌套列表转换为字典?

Python 如何将未知编号的嵌套列表转换为字典?,python,python-3.x,list,dictionary,Python,Python 3.x,List,Dictionary,我从CSV文件中读取数据,得到的列表包含数量可变的子列表,如下所示: list = [ ["a","b","c"], ["aa","bb","cc"], ["11","22","33"], ...... ] dict = { 'a' : ['aa','11'], 'b' : ['bb','22'], 'c' : ['cc','33'], } 列表不必有3个子列表,但子列表之间的值总是相同的 由于现有方法,这是我能够访问此数据的唯一方法。在这种

我从CSV文件中读取数据,得到的列表包含数量可变的子列表,如下所示:

list = [
    ["a","b","c"],
    ["aa","bb","cc"],
    ["11","22","33"],
    ......
]
dict = {
   'a' : ['aa','11'],
   'b' : ['bb','22'],
   'c' : ['cc','33'],
}
列表不必有3个子列表,但子列表之间的值总是相同的

由于现有方法,这是我能够访问此数据的唯一方法。在这种情况下,我不知道如何压缩或创建dict

我想得到一个这样的口述:

list = [
    ["a","b","c"],
    ["aa","bb","cc"],
    ["11","22","33"],
    ......
]
dict = {
   'a' : ['aa','11'],
   'b' : ['bb','22'],
   'c' : ['cc','33'],
}

感谢您的帮助

推广@GrajdeanuAlex.的解决方案:

{item[0]: list(item[1:]) for item in zip(*list)}

推广@GrajdeanuAlex的解决方案:

{item[0]: list(item[1:]) for item in zip(*list)}

首先,命名与内置项冲突的变量(如
list
dict
)不是一个好主意,但这将适用于任何数量的子列表

dict = {list[0][i]: [list[x][i] for x in range(1,len(list))] for i in range(len(list))}

首先,命名与内置项冲突的变量(如
list
dict
)不是一个好主意,但这将适用于任何数量的子列表

dict = {list[0][i]: [list[x][i] for x in range(1,len(list))] for i in range(len(list))}

您可以使用for循环来完成此操作。这是我的代码

List = [ ['a','b','c'], ['aa','bb','cc' ], ['11','22','33'],....]
L = len(List[0])
Dict = {}
for j in range(L):
   Lt = [i[j] for i in List]
   Dict[Lt[0]] = Lt[1:]
print(Dict)

您可以使用for循环来完成此操作。这是我的代码

List = [ ['a','b','c'], ['aa','bb','cc' ], ['11','22','33'],....]
L = len(List[0])
Dict = {}
for j in range(L):
   Lt = [i[j] for i in List]
   Dict[Lt[0]] = Lt[1:]
print(Dict)

你尝试了什么来实现这一点吗?如果是这样的话,如果使用外部包对你的情况没问题,考虑使用<代码>熊猫> <代码>,这给了一个简单的方法来将CSV读入<代码>数据文件中。这有一个方法。你试过什么来完成这一点吗?如果有的话,什么?如果使用外部包对你的情况来说是可以的,考虑使用<代码>熊猫> /代码>,它提供了一种简单的方法来读取CSV到<代码>数据文件> /代码>中。