如何解决比较两个字符串列表并在Python中打印不匹配项?
我有两个列表:
listOne = ['John','James',Daniel','Peter','Luke']
listTwo = ['Daniel',Kate','Jenny']
我想比较这两个列表并返回非匹配项,如果需要,将其保存到另一个列表,因此输出应为:
Non-Matches: 'Kate','Jenny'
我该如何实现?我曾考虑过将列表更改为集合,但运气不佳
解决方法
您可以使用set,看看这个功能:
def list_diff(list1,list2):
return (list(list(set(list1)-set(list2)) + list(set(list2)-set(list1))))
diff_values = list_diff(listOne,listTwo) # call to this function
python set:https://docs.python.org/2/library/sets.html
,此处:
list_one = ['John','James',Daniel','Peter','Luke']
list_two = ['Daniel',Kate','Jenny']
list_non_matches = [i for i in list_two if i not in list_one]
print(list_non_matches
,
您可以使用set
来完成
listOne = set(['John','Daniel','Luke'])
listTwo = set(['Daniel','Kate','Jenny'])
print(list(listTwo - listOne))
输出
['Kate','Jenny']
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。