【发布时间】:2021-08-05 18:27:52
【问题描述】:
d1 = {'A' : [1,2], 'B':[2,3,4],'C':[4,1,3,2], 'D':[5,6], 'E':[7,2], 'F':[8,1],'G':[1,3,4,2]}
l1 = [1,2,3,4,5,6,7,8,9]
d ={}
for i in l1:
for key,value in d1.():
for j in value:
if i in value[j]:
d.setdefault(key,[]).append(i)
预期输出:
- 一个1
- c 1
- g 1
- 一个2
- b 2
- c 2
- e 2
但我收到一个错误:
ValueError: 没有足够的值来解包(预期 2,得到 1)
为了说明我要完成的工作,我有需要在模板中检查的链接列表,并返回模板名称和链接。
这里的模板名称是键,数字 r 是值
提前谢谢你
【问题讨论】:
-
for key,value in d1.():应该是for key,value in d1.items(): -
对不起,是的。谢谢你指出,我错过了,但仍然。它抛出 IndexError: list index out of range
-
j不会是索引,所以value[j]没有多大意义。j将是列表中的实际元素。
标签: python list dictionary