将列表转换为字典,使用列表中的键和值

ana*_*and 2 python dictionary list

对不起,如果重复的问题,新的编程找不到任何合适的答案.我想将列表转换为字典.键为x [1],值为x [2]

为了清楚我有一个*3数组,需要将它转换为第二列作为键和第三列作为值的字典.

我试过了:

for entry in data:
     keys=entry[1]
     values=entry[2]

source = dict.fromkeys(keys, values)
Run Code Online (Sandbox Code Playgroud)

得到错误'类型列表不可以'

通过问题4576115.但是,我需要迭代3000+*3数组的每个元素,其中大多数元素本身是列​​表,然后将每个条目的第二个元素设置为键,将第3个元素设置为值.只是为了放大,也试过了

b = {data[i][1]: data[i][2] for i in range(0, len(data))}
Run Code Online (Sandbox Code Playgroud)

并输入数据:

keys=entry[1]
values=entry[2]
b.update(keys,values)
Run Code Online (Sandbox Code Playgroud)

keyList.append(keys)
valueList.append(values)
b = dict(zip(keyList,valueList))
Run Code Online (Sandbox Code Playgroud)

b={entry[1]:entry[2] for entry in data} 
Run Code Online (Sandbox Code Playgroud)

相同的问题 - 错误'列表'不可清除

好的,对不起.得到它了.问题是密钥本身就是列表.我正在看阵列并错过了元素

Zok*_*kis 7

不太明白,但这不是你想要的吗?

>>> a = [[1,2,3],[2,3,4],[4,5,6]]
>>> b = {x[1]:x[2] for x in a}
>>> b
{2: 3, 3: 4, 5: 6}
>>> 
Run Code Online (Sandbox Code Playgroud)