为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

偶然的你 2022-11-24 15:08:39

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


list = [

    ["a","b","c"],

    ["aa","bb","cc"],

    ["11","22","33"],

    ......

]

该列表不必有 3 个子列表,但子列表之间始终具有相同数量的值


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


我想得到这样的字典:


dict = {

   'a' : ['aa','11'],

   'b' : ['bb','22'],

   'c' : ['cc','33'],

}

感谢您的帮助


查看完整描述

3 回答

?
跃然一笑

TA贡献0条经验 获得超6个赞

概括@GrajdeanuAlex. 的解决方案:

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


查看完整回答
反对 回复 4天前
?
不负相思意

TA贡献1472条经验 获得超10个赞

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

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



查看完整回答
反对 回复 4天前
?
慕尼黑8549860

TA贡献1528条经验 获得超11个赞

您可以使用 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)


查看完整回答
反对 回复 4天前

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信