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 实现文件的递归拷贝实现代码
Aug 02 Python
Python内置函数bin() oct()等实现进制转换
Dec 30 Python
Python正则表达式如何进行字符串替换实例
Dec 28 Python
Python中表达式x += y和x = x+y 的区别详解
Jun 20 Python
Python中read()、readline()和readlines()三者间的区别和用法
Jul 30 Python
PyCharm的设置方法和第一个Python程序的建立
Jan 16 Python
Python列表与元组的异同详解
Jul 02 Python
jupyter notebook tensorflow打印device信息实例
Apr 20 Python
使用jupyter notebook运行python和R的步骤
Aug 13 Python
快速创建python 虚拟环境
Nov 28 Python
python3字符串输出常见面试题总结
Dec 01 Python
Python函数中的不定长参数相关知识总结
Jun 24 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
简单采集了yahoo的一些数据
2007/02/14 PHP
WordPress中自定义后台管理界面配色方案的小技巧
2015/12/29 PHP
PHP iconv()函数字符编码转换的问题讲解
2019/03/22 PHP
用js实现下载远程文件并保存在本地的脚本
2008/05/06 Javascript
JavaScript 格式字符串的应用
2010/03/29 Javascript
JavaScript类库D
2010/10/24 Javascript
关于document.cookie的使用javascript
2010/10/29 Javascript
js获取当前地址 JS获取当前URL的示例代码
2014/02/26 Javascript
jQuery链使用指南
2015/01/20 Javascript
在JavaScript中访问字符串的子串
2015/07/07 Javascript
javascript中JSON对象与JSON字符串相互转换实例
2015/07/11 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
浅谈js键盘事件全面控制
2016/12/01 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
详解AngularJS 模块化
2017/06/14 Javascript
基于ES6 Array.of的用法(实例讲解)
2017/09/05 Javascript
[01:02:26]DOTA2-DPC中国联赛 正赛 SAG vs RNG BO3 第二场 1月18日
2021/03/11 DOTA
Python基于回溯法子集树模板解决取物搭配问题实例
2017/09/02 Python
详解 Python 与文件对象共事的实例
2017/09/11 Python
浅析python协程相关概念
2018/01/20 Python
Flask核心机制之上下文源码剖析
2018/12/25 Python
python中PS 图像调整算法原理之亮度调整
2019/06/28 Python
Pandas_cum累积计算和rolling滚动计算的用法详解
2019/07/04 Python
浅谈HTML5新增及移除的元素
2016/06/27 HTML / CSS
美国百货齐全的精品网站,提供美式风格的产品:Overstock.com
2016/07/22 全球购物
Daniel Wellington官方海外旗舰店:丹尼尔惠灵顿DW手表
2018/02/22 全球购物
业务员岗位职责范本
2013/12/15 职场文书
三年级语文教学反思
2014/02/01 职场文书
2014婚礼司仪主持词
2014/03/14 职场文书
艺人经纪人岗位职责
2014/04/15 职场文书
会计求职信范文
2014/05/24 职场文书
2015年项目工作总结
2015/04/29 职场文书
卫生保健工作总结2015
2015/05/18 职场文书
MySQL时间设置注意事项的深入总结
2021/05/06 MySQL
通过shell脚本对mysql的增删改查及my.cnf的配置
2021/07/07 MySQL
Java设计模式之享元模式示例详解
2022/03/03 Java/Android