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的Django框架与认证系统整合的方法

将Django与其他现有认证系统的用户名和密码或者认证方法进行整合是可以办到的。 例如,你所在的公司也许已经安装了LDAP,并且为每一个员工都存储了相应的用户名和密码。 如果用户在LDA...

Pyhthon中使用compileall模块编译源文件为pyc文件

有的时候我们需要把项目中.py的python所有源文件编译成.pyc文件,只保留.pyc文件然后发布给别人(虽然说可以反编译,但也算是一种保护把). 这个时候就可以使用compileal...

python正则表达式re模块详细介绍

本模块提供了和Perl里的正则表达式类似的功能,不关是正则表达式本身还是被搜索的字符串,都可以是Unicode字符,这点不用担心,python会处理地和Ascii字符一样漂亮。 正则表...

python写的ARP攻击代码实例

注:使用这个脚本需要安装scapy 包最好在linux平台下使用,因为scapy包在windows上安装老是会有各种问题 复制代码 代码如下:#coding:utf-8#example...

numpy数组广播的机制

numpy数组广播的机制

numpy数组的广播功能强大,但是也同时让人疑惑不解,现在让我们来谈谈其中的原理。 广播原则: 如果两个数组的后缘维度(即:从末尾开始算起的维度)的轴长相符或其中一方的长度为1,则认为它...