Python 列表中的词典
当我的列表如下所示时,如何从列表创建词典Python 列表中的词典,python,list,Python,List,当我的列表如下所示时,如何从列表创建词典 L1 = [1,2,3,4,5,6,7,8,9] 我希望结果像字典一样 d = {'1':[2,3], '4':[5,6], '7':[8,9]} 有什么想法,如何实施 L = [1,2,3,4,5,6,7,8,9] n = 3 dict = {} for i in range(0, len(L), n): #this creates chunks of size n sub_list = L[i:i+n] dict[sub_lis
L1 = [1,2,3,4,5,6,7,8,9]
我希望结果像字典一样
d = {'1':[2,3], '4':[5,6], '7':[8,9]}
有什么想法,如何实施
L = [1,2,3,4,5,6,7,8,9]
n = 3
dict = {}
for i in range(0, len(L), n):
#this creates chunks of size n
sub_list = L[i:i+n]
dict[sub_list[0]] = sub_list[1:]
print(dict)
要获取大小为2
的词典条目,请在本例中选择n=3
要获取大小为2
的词典条目,请在此示例中选择n=3
。一行:
dict((L1[i*3], [L1[i*3+1], L1[i*3+2]]) for i in xrange(len(L1)/3))
说明:
xrange(len(L1)/3)
返回从0到2的惰性范围:[0,1,2]
。
此外,对于范围中的每个元素i
,它将转换为元组(k[v1,v2]])
。因此,最终的范围将是[(1[2,3]),(4[5,6]),(7[8,9])]
。最后,我们使用元组列表中的dict
构造函数,其中每个元素都被视为键值对
最后的结果是{1:[2,3],4:[5,6],7:[8,9]}
。要将键从数字转换为字符串,我们需要将L1[i*3]
替换为str(L1[i*3])
一行:
dict((L1[i*3], [L1[i*3+1], L1[i*3+2]]) for i in xrange(len(L1)/3))
说明:
xrange(len(L1)/3)
返回从0到2的惰性范围:[0,1,2]
。
此外,对于范围中的每个元素i
,它将转换为元组(k[v1,v2]])
。因此,最终的范围将是[(1[2,3]),(4[5,6]),(7[8,9])]
。最后,我们使用元组列表中的dict
构造函数,其中每个元素都被视为键值对
最后的结果是
{1:[2,3],4:[5,6],7:[8,9]}
。要将键从数字转换为字符串,我们需要将L1[i*3]
替换为str(L1[i*3])
没有预定义的方法,请编写一个递增3的循环,在该循环中首先添加键,然后添加2个元素作为值列表。没有预定义的方法,编写一个以3为增量的循环,在该循环中首先添加作为键,然后添加2个元素作为值列表。谢谢我得到了一个必需的答案谢谢我得到了一个必需的答案请解释您的代码。可能还想为使用Python 3的人建议一个解决方案请解释您的代码。可能还想为使用Python 3的人建议一个解决方案