python求列表交集的方法汇总

yipeiwu_com6年前Python基础

本文实例汇总了python求列表交集的方法。分享给大家供大家参考。具体方法如下:

交集对于给定的两个集合A 和 集合B 的交集是指含有所有既属于 A 又属于 B 的元素,而没有其他元素的集合叫交集了,下面给出几个python求列表交集例子供大家参考。

方法1

遍历b1,如果某个元素同时也存在于b2中,则返回

复制代码 代码如下:
b1=[1,2,3]
b2=[2,3,4]
b3 = [val for val in b1 if val in b2]
print b3

运行结果如下
复制代码 代码如下:
[2, 3]

方法2

把列表转换为集合,利用集合操作符求出交集,然后再转换回列表类型
复制代码 代码如下:
b1=[1,2,3]
b2=[2,3,4]
b3=list(set(b1) & set(b2))
print b3

运行结果如下
复制代码 代码如下:
[2, 3]

方法3

前面的例子中两个list都是简单的单元素列表,还有一种比较特殊的情况,就是有嵌套类型的

复制代码 代码如下:
b1=[1,2,3]
b2=[[2,4],[3,5]]
b3 = [filter(lambda x: x in b1,sublist) for sublist in b2]
print b3

运行结果如下
复制代码 代码如下:
[2, 3]

希望本文所述对大家的Python程序设计有所帮助。

相关文章

Python单链表简单实现代码

本文实例讲述了Python单链表简单实现代码。分享给大家供大家参考,具体如下: 用Python模拟一下单链表,比较简单,初学者可以参考参考 #coding:utf-8 class N...

python使用any判断一个对象是否为空的方法

本文实例讲述了python使用any判断一个对象是否为空的方法。分享给大家供大家参考。 具体实现代码如下: 复制代码 代码如下:>>> eth = {"eth0″:"1...

Python3中bytes类型转换为str类型

Python3中bytes类型转换为str类型

Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。Python 3不会以任意隐式的方式...

Python模块学习 filecmp 文件比较

filecmp定义了两个函数,用于方便地比较文件与文件夹: filecmp.cmp(f1, f2[, shallow]): 比较两个文件的内容是否匹配。参数f1, f2指定要比较的文件的...

Scrapy框架CrawlSpiders的介绍以及使用详解

Scrapy框架CrawlSpiders的介绍以及使用详解

在Scrapy基础——Spider中,我简要地说了一下Spider类。Spider基本上能做很多事情了,但是如果你想爬取知乎或者是简书全站的话,你可能需要一个更强大的武器。CrawlSp...