我有这样的名单,
big_list = [[1,3,5], [1,2,5], [9,3,5]]
sec_list = [1,3,5]我想遍历big_list并对照sec_list检查每个列表值。在检查时,我希望将不匹配的值存储到另一个列表中。所以,我做了这个:
sma_list = []
for each in big_list:
for i,j in zip(each, sec_list):
if i!=j:
sma_list.append(i)我得到了这样的结果:
[2, 9]不过,我需要一张这样的清单,
[[2], [9]]我怎样才能做到这一点?
发布于 2018-10-15 00:58:55
简短的回答,
sma_list.append([i])将值括在方括号中使其成为一个元素列表的第一个元素。
只有在每个列表中缺少一个元素时,这才能正常工作。你最好用一种理解的方法来理解整个事情:
sma_list = [[i for i, j in zip(each, sec_list) if i != j] for each in big_list]https://stackoverflow.com/questions/52808450
复制相似问题