【python】并集交集
set是用来去重的。
在list里使用union函数。这种方式不适用于元素为字典的。
list(set(a)^set(b)) 这是求差集
所以交集就是并集和ab的差集。
import random def getRand(n):
return [random.randint(0,100) for i in range(int(n))] a = getRand(10)
b = getRand(10) print(a)
print(b) c = list(set(a).union(set(b)))
print("ab的并集是:")
print(c) print("ab的交集是:")
d = list( (set(a).union(set(b))) ^ set(a) ^ set(b))
print(d)
列表生成式
emmm...记得函数和函数之间空两行,被教育了
import random def getRand(n):
return [random.randint(0,100) for i in range(int(n))] def union(a,b):
return [x for x in set(a+b)] def inter(a,b):
return [x for x in set(a) if x in set(b)] def main():
a = getRand(10)
b = getRand(10)
a = list(set(a))
b = list(set(b))
c = union(a,b)
d = inter(a,b)
print(a)
print(b)
print("并集是:")
print(c)
print("交集是:")
print(d)
main()
【python】并集交集的更多相关文章
- python List交集、并集、差集
工作中遇到了求两个集合的差集,但是集合集合中包含字典,所以使用difference方法会报错,看了一些别人的博客,整理了一下. 1. 获取两个list 的交集print list(set(a).int ...
- 【Sets】使用Google Guava工程中Sets工具包,实现集合的并集/交集/补集/差集
获取两个txt文档的内容~存储进集合中求集合的并集/交集/补集/差集 package com.sxd.readLines.aboutDB; import java.io.BufferedReader; ...
- python 并集union, 交集intersection, 差集difference, 对称差集symmetric_difference
python的集合set和其他语言类似,是一个无序不重复元素集, 可用于消除重复元素. 支持union(联合), intersection(交), difference(差)和sysmmetric d ...
- python数组并集交集补集
并集 a = ["a", "b", "c", "d"] b = ["b", "e" ...
- python求两个列表的并集.交集.差集
求两个列表的差集 >>> a = [1,2,3] >>> b=[1,2] >>> ################################ ...
- python 求交集、并集、差集
需要用到set类型 交集,两种方法 retA = [i for i in listA if i in listB] retB = setA.intersection(setB) 并集 retC = s ...
- 【python】集合 list差集|并集|交集
两个list差集 list(set(b).difference(set(a))) # b中有而a中没有的 示例: a=[1,2,3] b=[2,3] list(set(a).difference(se ...
- java数组并集/交集/差集(补集)
1.说明 使用java容器类的性质选择容器 2.实现 package com.wish.datastrustudy; import java.util.HashSet; import java.uti ...
- [Linux] 取两个文件的并集/交集/差集
uniq -d是只打印重复行 -u是只打印独一无二的行文件A : abcd文件B: cdef取并集:A + B sort A B|uniq 取交集: sort A B|uniq -d 取差集:A - ...
随机推荐
- python re.findall 使用
python re.findall 使用 import re #\w 匹配字母数字及下划线 print(re.findall('\w','hello alan _god !@^&#^$^!*& ...
- [转] Linux下编写脚本实现Daemon
在Linux(以Redhat Linux Enterprise Edition 5.3为例)下,有时需要编写Service.Service也是程序,一般随系统启动用户不干预就不退出的程序,可以称为Se ...
- jsp2自定义标签+属性
前面说过jsp2自定义标签如果要加入属性需要设置属性的getter和setter方法.代码如下: public class GetParam extends SimpleTagSupport { pr ...
- MySQL之explain命令解释
explain显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. 使用方法,在select语句前加上explain就可以了.如: explai ...
- 拾遗:Go 基础
这 Go,越看越像是 C 和 Python 的混合体--! gofmt 用于格式化代码,缩进使用 tab,而不是空格:Python 官方则建议使用空格,而不是 tab package Go 惯例,使用 ...
- 前端跨域实现的几种方式?及使用Nginx反向代理配置。
早期为了防止CSRF(跨域请求伪造)的攻击,浏览器引入了同源策略(SOP)来提高安全性.而所谓"同源策略",即同域名(domain或ip).同端口.同协议的才能互相获取资源,而不能 ...
- ArcGis基础——动态显示面要素的面积值
很基础,不赘述. 1.在catalog(目录)新建一个PersonalGeoDatabase(个人地理数据库),导入需要处理的Shapefile文件. 坐标系统,存储路径与命名根据自己需求设定 2.直 ...
- (Struts2学习系列三)Struts2动态方法调用:通配符方式
更改src/struts2.xml的代码: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ...
- Spark Streaming设计
- 微信小程序改变全局变量
假设A为登录页面并将登录获得的用户信息保存到app.js中的全局变量userInfo中,然后在B页面进行使用. app.js globalData:{ userInfo:null, } a.js ...