L = [ ]
a ={ 'A1' : [ 'A'] }
b = { 'A' : [ 'a1', 'a2'] , 'a1' : ['a11' , 'a12'] }
c = [ 'a11.txt' , 'a3.txt' ]
我的条件:
下面是我的代码:
for k,v in a.items():
for element in v:
if element +'.txt' in c :
L.append(k)
else:
for k1,v1 in b.items():
if element == k1:
for element1 in v1:
if element1+'.txt' in c:
L.append(k1)
else:
for k1,v1 in b.items():
if element1 == k1 :
for element2 in v1 :
if element2+'.txt' in c :
L.append(k1)
我想要的结果应该是L = [ ]
但是我得到了L = [ 'a1' ]
这样做有效:
不需要两本字典。我合并了它们(或者如果你一开始可以使用single,那会更好)并过滤了
c
列表来删除'.txt'
部分然后,我们遍历字典并检查筛选列表中是否存在所有值
相关问题 更多 >
编程相关推荐