比较Python中的两个列表(几乎相同)
作者:互联网
我在示例中有两个带有值的列表:
List 1 = TK123,TK221,TK132
和
List 2 = TK123A,TK1124B,TK221L,TK132P
我想要做的是获取另一个数组,该数组具有列表1和列表2之间所有匹配的值,然后输出不匹配的值.
就我而言,“ TK123”和“ TK123A”被认为是匹配的.因此,从上面的列表中,我只会得到TK1124B.
我并不特别在意速度,因为我计划运行一次并完成该程序.
解决方法:
这会将列表中的每个项目与另一个列表中的每个项目进行比较.如果两个字母都有字母(例如TK132C和TK132P不匹配),这将无法正常工作.如果有问题,请在下面评论.
list_1 = ['TK123','TK221','TK132']
list_2 = ['TK123A','TK1124B','TK221L','TK132P']
ans = []
for itm1 in list_1:
for itm2 in list_2:
if itm1 in itm2:
break
if itm2 in itm1:
break
else:
ans.append(itm1)
for itm2 in list_2:
for itm1 in list_1:
if itm1 in itm2:
break
if itm2 in itm1:
break
else:
ans.append(itm2)
print ans
>>> ['TK1124B']
标签:sortedlist,python 来源: https://codeday.me/bug/20191014/1911832.html