python 判断两个列表中相同和不同的元素

Posted 奔奔-武

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 判断两个列表中相同和不同的元素相关的知识,希望对你有一定的参考价值。

背景:

在做接口自动化时,通常会判断接口返回中的数据信息,与数据库中返回的数据信息是否一致,比如:将接口返回信息的用户姓名存放到一个列表中,将数据库返回的用户姓名存放到另一个列表中,这时需要判断两个列表是否一致,如果不一致,将不同的元素信息分别回写到excel文件中,可以一目了然的看出哪些信息返回的不正确。

下列代码中直接存放列表信息,比较如下:

 1 #接口返回值
 2 list1 = [张三, 李四, 王五, 老二]
 3 #数据库返回值
 4 list2 = [张三, 李四, 老二, 王七]
 5 
 6 a = [x for x in list1 if x in list2] #两个列表表都存在
 7 b = [y for y in (list1 + list2) if y not in c] #两个列表中的不同元素
 8 
 9 print(a的值为:,a)
10 print(b的值为:,b)
11 
12 c = [x for x in list1 if x not in list2]  #在list1列表中而不在list2列表中
13 d = [y for y in list2 if y not in list1]  #在list2列表中而不在list1列表中
14 print(c的值为:,c)
15 print(d的值为:,d)

运行结果为:

a的值为: [‘张三‘, ‘李四‘, ‘老二‘]
b的值为: [‘王五‘, ‘王七‘]
c的值为: [‘王五‘]
d的值为: [‘王七‘]

以上是关于python 判断两个列表中相同和不同的元素的主要内容,如果未能解决你的问题,请参考以下文章

如何判断数组列表中的元素是相同还是不同?

Python之克隆

python如何判断两个数组完全相等?

python自测——数据类型-列表

python基础笔记-4python删除两个列表中相同的元素

Python:利用for循环比较两个列表元素的异同进而找出共有元素各自不同元素并全部导出到csv文件实现代码