Python中list的交、并、差集获取方法示例

yipeiwu_com5年前Python基础

1. 获取两个list 的交集

# -*- coding=utf-8 -*-
 
#方法一:
a=[2,3,4,5]
b=[2,5,8]
tmp = [val for val in a if val in b]
print tmp
#[2, 5]
 
#方法二
print list(set(a).intersection(set(b)))

2. 获取两个list 的并集

print list(set(a).union(set(b)))

3. 获取两个list 的差集

print list(set(b).difference(set(a))) # b中有而a中没有的
print list(set(a).difference(set(b))) # a中有而b中没有的

总体代码及执行结果:

# -*- coding=utf-8 -*-
 
#方法一:
a=[2,3,4,5]
b=[2,5,8]
tmp = [val for val in a if val in b]
print tmp
#[2, 5]
 
#方法二
print list(set(a).intersection(set(b)))
 
print list(set(a).union(set(b)))
 
print list(set(b).difference(set(a))) # b中有而a中没有的
print list(set(a).difference(set(b))) # a中有而b中没有的

/usr/bin/python /Users/nisj/PycharmProjects/EsDataProc/mysql_much_tab_data_static.py
[2, 5]
[2, 5]
[2, 3, 4, 5, 8]
[8]
[3, 4]
 
Process finished with exit code 0

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

深入浅析Python2.x和3.x版本的主要区别

版本说明 Python 3.0在设计的时候没有考虑向较早版本相容 Python 2.6作为一个过渡版本,基本使用了Python 2.x的语法和库,同时考虑了向Python 3.0的迁移,...

python 字符串追加实例

通过一个for循环,将一个一个字符追加到字符串中: 方法一: string = '' str=u"追加字符" for i in range(len(str)): string+=...

导入tensorflow时报错:cannot import name 'abs'的解决

导入tensorflow时报错:cannot import name 'abs'的解决

一,问题背景 作者在用tensorflow做实验时,import tensorflow忽然报错:cannot import name 'abs'。错误情况如下所示: 这个问题出现的比较...

Pandas:Series和DataFrame删除指定轴上数据的方法

如下所示: import numpy as np import pandas as pd from pandas import Series,DataFrame 一、drop方法:...

Python2.x版本中maketrans()方法的使用介绍

 maketrans()方法返回的字符串intab每个字符映射到字符的字符串outtab相同位置的转换表。然后这个表被传递到translate()函数。 注意:两个intab和...