求两个列表的交集、并集、差集

python

def diff(listA, listB):

# 求交集的两种方式

retA = [i for i in listA if i in listB]

retB = list(set(listA).intersection(set(listB)))

print("retA is :", retA)

print("retB is :", retB)

# 求并集

retC = list(set(listA).union(set(listB)))

print("retC is:", retC)

# 求差集,在B中但不在A中

retD = list(set(listB).difference(set(listA)))

print("retD is:", retD)

retE = [i for i in listB if i not in listA]

print("retE is:", retE)

def main():

listA = [1, 2, 3, 4, 5]

listB = [3, 4, 5, 6, 7]

diff(listA, listB)

if name == 'main':

main()

main()

###直接上运行结果

# retA is : [3, 4, 5]

#retB is : [3, 4, 5]

#retC is: [1, 2, 3, 4, 5, 6, 7]

#retD is: [6,7]

#retE is: [6, 7]



*代码思路:使用列表解析式。列表解析式一般来说比循环快,而且更python,将list转成set以后,使用set的各种方法去处理*

python中列表之间求差集、交集、并集的更多相关文章

  1. Python中列表,元组,字典,集合的区别

    参考文档https://blog.csdn.net/Yeoman92/article/details/56289287 理解Python中列表,元组,字典,集合的区别 列表,元组,字典,集合的区别是p ...

  2. python中列表和元组以及字符串的操作

    python中列表是非常好用的.不过有一些使用小细节还需要注意一下. tag[32:-4] 从index为32到tag的倒数第4个字符. 如果索引为32的值在倒数第4个字符的右边,那么将输出为空.只要 ...

  3. python中列表元素连接方法join用法实例

    python中列表元素连接方法join用法实例 这篇文章主要介绍了python中列表元素连接方法join用法,实例分析了Python中join方法的使用技巧,非常具有实用价值,分享给大家供大家参考. ...

  4. 对Python中列表和数组的赋值,浅拷贝和深拷贝的实例讲解

    引用:https://www.jb51.net/article/142775.htm 列表赋值: 1 2 3 4 5 6 7 >>> a = [1, 2, 3] >>&g ...

  5. java8 集合求差集、并集、交集

    前言 java8里最大亮点是lambda,让我们用习惯C# linq的语法,也能眼前一亮.但是比起C#的语法糖还是差的很远. 差集.并集.交集 @Test public void test1(){ L ...

  6. python中 列表 字典 元组的了解

    #######列表######1.列表的特性 server = [['http'],['ssh'],['ftp']] server1 = [['mysql'],['firewalld']]  连接  ...

  7. 谈谈Python中列表、元组和数组的区别和骚操作

    一.列表(List) 1.列表的特点 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔.如 L = [1,2,3], 列表a有3个成员. 列表是可变的数据类型[可进行增删改查],列表中可以包 ...

  8. Python中列表、元组、字典、集合与字符串,相关函数,持续更新中……

    本篇博客为博主第一次学 Python 所做的笔记(希望读者能够少点浮躁,认真阅读,平心静气学习!) 补充: 列表.元组和字符串共同属性: 属于有序序列,其中的元素有严格的先后顺序 都支持双向索引,索引 ...

  9. python中列表、元组、字典内部功能介绍

    一.列表(list) 常用功能的介绍:

随机推荐

  1. .NET开发人员的完美.gitignore文件

    # Build and Object Folders bin/ obj/ # Nuget packages directory packages/ ## Ignore Visual Studio te ...

  2. unittest 的用法

    一.discover方法 discover方法可以根据标准加载用例,并将结果返回给测试套件(suite),start_dir:待测试的目录,pattern:测试用例文件名的匹配规. 如: start_ ...

  3. Matlab基础:关于图像的基本操作

    -- %% 学习目标:学习关于图像的基本操作 %% 通过抖动来增强图像的的色彩对比度 clear all; close all; I = imread('cameraman.tif');%读取灰度图像 ...

  4. PHP无限级树形结构算法(递归和引用)

    测试数组 $array = [ [, , 'name' => '这是主类'], [, , 'name' => '这是主类'], [, , 'name' => '父级为1子类'], [ ...

  5. [Java复习] 分布式事务 Part 1

    1. CAP理论 C: Consistency 一致性 A: Availability 可用性 P: Partition tolerance 分区容错性 CAP定理:一个分布式系统不可能同时满足CAP ...

  6. Java8 新特性之Stream

    1.Student package com.elk.log.myTest; public class Student implements Comparable<Student> { /* ...

  7. windows下打开binlog

    上篇我们介绍了binlog(参见mysql的binlog),配置文件用的是linux下的my.cnf,那么在windows下如何打开binlog呢?道理是相同的,配置文件是不一样的.在windows下 ...

  8. Delphi分割字符串函数Split源码

    function TStringHelper.Split(const Separator: array of string; Count: Integer; Options: TStringSplit ...

  9. MySQL5.7查看数据存储位置

    在MySQL客户端执行如下命令查看MySQL的数据存放位置: mysql> show global variables like "%datadir%"; +-------- ...

  10. WEB前端动态背景集

    本资源是我在源代码网站上发现的,内附几十种背景动态特效,我单独提取出来精品背景特效在此分享,文件里有20多种精品动态效果,本人觉得可用作于个人博客主页背景,登陆页面背景等,有20多个背景特效,非常漂亮 ...