python3中set(集合)的语法总结分享


Posted in Python onMarch 24, 2017

介绍

set 顾明思义,就是个集合,集合的元素是唯一的,无序的。一个{ }里面放一些元素就构成了一个集合,set里面可以是多种数据类型(但不能是列表,集合,字典,可以是元组)

集 合 是 一 个 无 序 不 重 复 元素 的 集 。 基 本 功 能 包 括 关 系 测 试 和 消 除 重 复 元 素 。 集 合 对 象 还 支 持 union( 联
合),intersection(交),difference(差)和 sysmmetric difference(对称差集)等数学运算。

大括号或 set() 函数可以用来创建集合。 注意:想要创建空集合,你必须使用set() 而不是 {} 。{}用于创建空字典;

具体的语法总结如下。

add(增加元素)

name = set(['Tom','Lucy','Ben'])
name.add('Juny')
print(name)

#输出:{'Lucy', 'Juny', 'Ben', 'Tom'}

clear(清空所有元素)

name = set(['Tom','Lucy','Ben'])
name.clear()
print(name)

#输出:set()

copy(拷贝set集合)

name = set(['Tom','Lucy','Ben'])
new_name = name.copy()
print(new_name)

#输出:{'Tom', 'Lucy', 'Ben'}

difference(返回两个或多个集合中不同的元素,并生成新的集合)

A = set([2,3,4,5])
B = set([3,4])
C = set([2])
n = n1.difference(n2,n3)
print(n)

#输出:{5}
#返回A集合里面,在B和C集合中没有的元素,并生成新的集合

difference_update(删除A集合里面,在B集合中存在的元素。)

A = set([2,3,4,5])
B = set([4,5])
A.difference_update(B)
print(A)

#输出:{2, 3}

discard(移除元素)

n = set([2,3,4])
n.discard(3)
print(n)

#输出:{2, 4}

intersection(取交集,并生成新的集合)

n1 = set([2,3,4,5])
n2 = set([4,5,6,7])
n = n1.intersection(n2)
print(n)

#输出:{4, 5}

intersection_update(取交集,修改原来的集合)

n1 = set([2,3,4,5])
n2 = set([4,5,6,7])
n1.intersection_update(n2)
print(n1)

#输出:{4, 5}

isdisjoint(判断交集,是返回False,否返回True)

n1 = set([2,3,4,5])
n2 = set([4,5,6,7])
print(n1.isdisjoint(n2))

#输出:False

issubset(判断子集)

A = set([2,3])
B = set([2,3,4,5])
print(A.issubset(B))

#输出:True
#A是B的子集

issuperset(判断父集)

A = set([2,3])
B = set([2,3,4,5])
print(B.issuperset(A))

# 输出:True
#B是A的父集

pop(随机移除一个元素)

n = set([2,3,4,5])
n1 = n.pop()
print(n,n1)

# 输出:{3, 4, 5} 2

remove(移除指定元素)

n = set([2,3,4,5])
n.remove(2)
print(n)

# 输出:{3, 4, 5}

symmetric_difference(取交集,并生成新的集合)

A = set([2,3,4,5])
B = set([4,5,6,7])
print(A.symmetric_difference(B))

# 输出:{2, 3, 6, 7}

symmetric_difference_update(取交集,改变原来的集合)

A = set([2,3,4,5])
B = set([4,5,6,7])
A.symmetric_difference_update(B)
print(A)

# 输出:{2, 3, 6, 7}

union(取并集,并生成新的集合)

A = set([2,3,4,5])
B = set([4,5,6,7])
print(A.union(B))

# 输出:{2, 3, 4, 5, 6, 7}

update(取并集,改变原来的集合)

A = set([2,3,4,5])
B = set([4,5,6,7])
A.update(B)
print(A)

# 输出:{2, 3, 4, 5, 6, 7}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python入门篇之面向对象
Oct 20 Python
Python实现Logger打印功能的方法详解
Sep 01 Python
Python实现的朴素贝叶斯分类器示例
Jan 06 Python
python OpenCV学习笔记实现二维直方图
Feb 08 Python
python构建深度神经网络(DNN)
Mar 10 Python
Sanic框架应用部署方法详解
Jul 18 Python
selenium+python 对输入框的输入处理方法
Oct 11 Python
PowerBI和Python关于数据分析的对比
Jul 11 Python
python使用flask与js进行前后台交互的例子
Jul 19 Python
Django在Model保存前记录日志实例
May 14 Python
pycharm2020.2 配置使用的方法详解
Sep 16 Python
Pandas之缺失数据的实现
Jan 06 Python
Python Socket编程详细介绍
Mar 23 #Python
python3中int(整型)的使用教程
Mar 23 #Python
python利用Guetzli批量压缩图片
Mar 23 #Python
python3中str(字符串)的使用教程
Mar 23 #Python
python常用知识梳理(必看篇)
Mar 23 #Python
Python爬取qq music中的音乐url及批量下载
Mar 23 #Python
Python爬取网页中的图片(搜狗图片)详解
Mar 23 #Python
You might like
PHP5 面向对象(学习记录)
2009/12/02 PHP
支持中文和其他编码的php截取字符串函数分享(截取中文字符串)
2014/03/13 PHP
PHP中Enum(枚举)用法实例详解
2015/12/07 PHP
详解Yii2.0使用AR联表查询实例
2017/06/16 PHP
详解PHP多个进程配合redis的有序集合实现大文件去重
2019/03/06 PHP
Yii2框架中一些折磨人的坑
2019/12/15 PHP
jquery 显示*天*时*分*秒实现时间计时器
2014/05/07 Javascript
JavaScript中getUTCMinutes()方法的使用详解
2015/06/10 Javascript
js倒计时简单实现方法
2015/12/17 Javascript
Angular 4依赖注入学习教程之简介(一)
2017/06/04 Javascript
浅谈 vue 中的 watcher
2017/12/04 Javascript
Vue项目pdf(base64)转图片遇到的问题及解决方法
2018/10/19 Javascript
[01:13]这,就是刀塔
2014/07/16 DOTA
Python解析xml中dom元素的方法
2015/03/12 Python
python 捕获shell脚本的输出结果实例
2017/01/04 Python
利用python求解物理学中的双弹簧质能系统详解
2017/09/29 Python
Python实现动态图解析、合成与倒放
2018/01/18 Python
用Django实现一个可运行的区块链应用
2018/03/08 Python
python基础教程项目五之虚拟茶话会
2018/04/02 Python
python匹配两个短语之间的字符实例
2018/12/25 Python
Python中的list与tuple集合区别解析
2019/10/12 Python
Python面向对象编程基础实例分析
2020/01/17 Python
python语言中有算法吗
2020/06/16 Python
纯CSS实现预加载动画效果
2017/09/06 HTML / CSS
css3中background新增的4个新的相关属性用法介绍
2013/09/26 HTML / CSS
Urban Outfitters德国官网:美国跨国生活方式零售公司
2018/05/21 全球购物
家电业务员岗位职责
2014/03/10 职场文书
学员自我鉴定
2014/03/19 职场文书
上海世博会口号
2014/06/19 职场文书
党的群众路线教育实践活动个人对照检查剖析材料
2014/09/23 职场文书
暑期社会实践证明书
2014/11/17 职场文书
2014高三学生考试作弊检讨书
2014/12/14 职场文书
三八节活动主持词
2015/07/04 职场文书
修辞手法有哪些?
2019/08/29 职场文书
Nginx+SpringBoot实现负载均衡的示例
2021/03/31 Servers
Spring事务管理下synchronized锁失效问题的解决方法
2022/03/31 Java/Android