Python中的集合介绍


Posted in Python onJanuary 28, 2019

1.集合的定义

集合的元素是不可重复的

s = {1,2,3,1,2,3,4,5}
print(s)
print(type(s))
s1 = {1}
print(s1)
print(type(s1))

Python中的集合介绍

集合就算只有一个元素,也是集合,不需要像列表一样,加个逗号

那么如何定义一个空集合

s2 = {}
print(type(s2))
s3 = set([])
print(s3)
print(type(s3))

Python中的集合介绍

集合的应用(去重)

li = [1,2,3,1,2,3]
print(list(set(li)))

Python中的集合介绍

2.集合的特性

集合只支持成员操作符和for循环

s = {1,2,3}
print(1 in s)

此时的返回值为True

for i in s:
  print(i,end='|')
for i,v in enumerate(s):
  print('index: %s,value: %s' %(i,v))

Python中的集合介绍

3.集合的常用方法

集合是无序的数据类型,添加顺序和在集合中存储的数据不一定相同

1)增加元素

s = {6,7,8,9}
#增加一个元素
s.add(1)
print(s)

2)增加多个元素

s.update({5,3,2})   ##使用update命令
print(s)

3)删除

s.pop()
print(s)

删除指定元素

s.remove(5)
print(s)

4)集合运算

s = {1,2,3}
s2={2,3,4}

并集

print('并集:',s1.union(s2))
print('并集:',s1|s2)

交集

print('交集:',s1.intersection(s2))
print('交集:',s1&s2)

差集

print('差集:',s1.difference(s2)) #s1-(s1&s2)
print('差集:',s2.difference(s1)) #s2-(s1&s2)

对等差分:并集-交集

print('对等差分:',s2.symmetric_difference(s1))
print('对等差分:',s1^s2)

集合关系的判断

s3 = {1,2}
s4 = {1,2,3}
#s3是否为s4的超集
#超集:如果s3中的每一个元素都在集合s4中,且s4中可能包含s3中没有的元素,
#那么s4就是s3的一个超集
print(s3.issuperset(s4))
print(s4.issuperset(s3))
#s3是否为s4的子集
print(s3.issubset(s4))
#两个集和是不是 不相交
print(s3.isdisjoint(s4))

4.练习

明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性
他先用计算机生成了N个1~1000之间的随机整数(N<=1000),N是用户输入>的,对于
其中重复的数字,只保留一个,把其余相同的数字去掉,不同的数对应着
不同的学生的学号,然后再把这些
数从小到大排序,按照排好的顺序去找同学做调查,请你协助明明完成“>去重”与排序工作

s = set([])
for i in range(int(input('N:'))):
  s.add(random.randint(1,1000))
print(s)
print(sorted(s))

ok~

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
用python + openpyxl处理excel2007文档思路以及心得
Jul 14 Python
Python检测QQ在线状态的方法
May 09 Python
Python数据类型详解(四)字典:dict
May 12 Python
python与C互相调用的方法详解
Jul 14 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
Sep 08 Python
Django中Forms的使用代码解析
Feb 10 Python
面向初学者的Python编辑器Mu
Oct 08 Python
tensorflow 查看梯度方式
Feb 04 Python
Python Opencv实现单目标检测的示例代码
Sep 08 Python
Python中相见恨晚的技巧
Apr 13 Python
python实现简单区块链结构
Apr 25 Python
k-means & DBSCAN 总结
Apr 27 Python
Python 使用Numpy对矩阵进行转置的方法
Jan 28 #Python
Python根据欧拉角求旋转矩阵的实例
Jan 28 #Python
python 二维数组90度旋转的方法
Jan 28 #Python
python 处理数字,把大于上限的数字置零实现方法
Jan 28 #Python
python实现蒙特卡罗方法教程
Jan 28 #Python
用python一行代码得到数组中某个元素的个数方法
Jan 28 #Python
python简单贪吃蛇开发
Jan 28 #Python
You might like
福利彩票幸运号码自动生成器
2006/10/09 PHP
php学习笔记 php中面向对象三大特性之一[封装性]的应用
2011/06/13 PHP
7个超级实用的PHP代码片段
2011/07/11 PHP
PHP互换两个变量值的方法(不用第三变量)
2016/11/14 PHP
PHP CURL中传递cookie的方法步骤
2019/05/09 PHP
Autocomplete Textbox Example javascript实现自动完成成功
2007/08/17 Javascript
Jquery下的26个实用小技巧(jQuery tips, tricks &amp; solutions)
2010/03/01 Javascript
Javascript 类与静态类的实现(续)
2010/04/02 Javascript
Js组件的一些写法
2010/09/10 Javascript
通过JavaScript使Div居中并随网页大小改变而改变
2013/06/24 Javascript
用html+css+js实现的一个简单的图片切换特效
2014/05/28 Javascript
JS实现超精简的链接列表在固定区域内滚动效果代码
2015/11/04 Javascript
JQuery实现网页右侧随动广告特效
2016/01/17 Javascript
JavaScript中日期函数的相关操作知识
2016/08/03 Javascript
浅述节点的创建及常见功能的实现
2016/12/15 Javascript
canvas仿iwatch时钟效果
2017/03/06 Javascript
vue中用H5实现文件上传的方法实例代码
2017/05/27 Javascript
JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)
2017/06/09 Javascript
在vue中解决提示警告 for循环报错的方法
2018/09/28 Javascript
vuejs2.0运用原生js实现简单拖拽元素功能
2020/08/21 Javascript
在vue中使用G2图表的示例代码
2019/03/19 Javascript
[01:40]2014DOTA2国际邀请赛 三冰SOLO赛后采访恶搞
2014/07/09 DOTA
Python中使用Flask、MongoDB搭建简易图片服务器
2015/02/04 Python
使用Python自动化破解自定义字体混淆信息的方法实例
2019/02/13 Python
对Python中一维向量和一维向量转置相乘的方法详解
2019/08/26 Python
python pillow模块使用方法详解
2019/08/30 Python
使用keras实现densenet和Xception的模型融合
2020/05/23 Python
一个入门级python爬虫教程详解
2021/01/27 Python
python常量折叠基础知识点讲解
2021/02/28 Python
Python3压缩和解压缩实现代码
2021/03/01 Python
BLACKMORES澳洲官网:澳大利亚排名第一的保健品牌
2018/09/27 全球购物
数据库什么时候应该被重组
2012/11/02 面试题
委托书范文
2014/04/02 职场文书
中学生思想品德评语
2014/12/31 职场文书
班主任高考寄语
2015/02/26 职场文书
劳动者解除劳动合同通知书
2015/04/16 职场文书