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]
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有