码迷,mamicode.com
首页 > 编程语言 > 详细

python的交集、并集、差集

时间:2018-10-18 22:00:29      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:union   sdn   log   name   __name__   int   []   details   tail   

①差集

方法一:

if __name__ == ‘__main__‘:
a_list = [{‘a‘ : 1}, {‘b‘ : 2}, {‘c‘ : 3}, {‘d‘ : 4}, {‘e‘ : 5}]
b_list = [{‘a‘ : 1}, {‘b‘ : 2}]
ret_list = []
for item in a_list:
if item not in b_list:
ret_list.append(item)
for item in b_list:
if item not in a_list:
ret_list.append(item)
print(ret_list)
执行结果:

 

方法二:

if __name__ == ‘__main__‘:
a_list = [{‘a‘ : 1}, {‘b‘ : 2}, {‘c‘ : 3}, {‘d‘ : 4}, {‘e‘ : 5}]
b_list = [{‘a‘ : 1}, {‘b‘ : 2}]
ret_list = [item for item in a_list if item not in b_list] + [item for item in b_list if item not in a_list]
print(ret_list)
执行结果:

 


方法三:

if __name__ == ‘__main__‘:
a_list = [1, 2, 3, 4, 5]
b_list = [1, 4, 5]
ret_list = list(set(a_list)^set(b_list))
print(ret_list)
执行结果:

注:此方法中,两个list中的元素不能为字典

 

②并集

if __name__ == ‘__main__‘:
a_list = [1, 2, 3, 4, 5]
b_list = [1, 4, 5]
ret_list = list(set(a_list).union(set(b_list)))
print(ret_list)
执行结果:

注:此方法中,两个list中的元素不能为字典

 

③交集

if __name__ == ‘__main__‘:
a_list = [1, 2, 3, 4, 5]
b_list = [1, 4, 5]
ret_list = list((set(a_list).union(set(b_list)))^(set(a_list)^set(b_list)))
print(ret_list)
执行结果:

注:此方法中,两个list中的元素不能为字典
---------------------
作者:cuckoo5
来源:CSDN
原文:https://blog.csdn.net/wudj810818/article/details/50403424
版权声明:本文为博主原创文章,转载请附上博文链接!

python的交集、并集、差集

标签:union   sdn   log   name   __name__   int   []   details   tail   

原文地址:https://www.cnblogs.com/zi-lin-xia-tian/p/9813116.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!