python基础知识小结之集合


Posted in Python onNovember 25, 2015

集合

特点:集合对象是一组无序排列的可哈希的值:集合成员可以做字典的键,与列表和元组不同,集合无法通过数字进行索引。此外,集合中的元素不能重复。

 定义

set() -> new empty set object
 set(iterable) -> new set object
 s = {0}

应用:去重

>>> lst1 = [1,1,2,2,3,4,2]
 >>> list(set(lst1))
 [1, 2, 3, 4]

常用操作

集合支持一系列标准操作,包括并集|、交集&、差集-和对称差集^
子集< <=及超集> >=
增删,清空操作

具体见如下代码例子

>>> lst1 = [1,2]
>>> lst2 = [2,3]
>>> a = set(lst1) #定义集合
>>> b = set(lst2)
>>> a,b
({1, 2}, {2, 3})
>>> a|b #取并集
{1, 2, 3}
>>> a&b #取交集
{2}
>>> a-b #取差集
{1}
>>> b-a #取差集
{3}
>>> list(a) #转换集合为列表,也可转为元组,如 tuple(a)返回 (1,2)
[1, 2]
>>> a < b #子集判断
False
>>> c = set([1])
>>> c
{1}
>>> c < a #子集判断
True
>>> c <= a #子集判断
True
>>> d = set([1,2,3])
>>> d > a #超集判断
True
>>> 
>>> d >= a #超集判断
True
>>> a,b
({1, 2}, {2, 3})
>>> a^b # 对称差集 
{1, 3}
>>> c
{1}
>>> d
{1, 2, 3}
>>> a^d # 对称差集 
{3}
>>> s = {0}
>>> type(s)
<class 'set'>
>>> 
>>> print(s, len(s)) #集合长度 
{0} 1
>>> s.add('1') #添加元素
>>> s
{0, '1'}
>>> s.update([2,3]) #添加多个元素
>>> s
{0, 2, 3, '1'}
>>> s.remove(2) #删除指定元素,如没有则报错
>>> s
{0, 3, '1'}
>>> s.pop() #随便删元素(貌似没什么用)
0
>>> s
{3, '1'}
>>> s.discard(3) #删除指定元素
>>> s
{'1'}
>>> s.clear() #清空集合
>>> s
set()
Python 相关文章推荐
python简单判断序列是否为空的方法
Jun 30 Python
Google开源的Python格式化工具YAPF的安装和使用教程
May 31 Python
pycharm下打开、执行并调试scrapy爬虫程序的方法
Nov 29 Python
TensorFlow实现AutoEncoder自编码器
Mar 09 Python
Flask框架响应、调度方法和蓝图操作实例分析
Jul 24 Python
python抓取京东小米8手机配置信息
Nov 13 Python
python实现在函数图像上添加文字和标注的方法
Jul 08 Python
python Pandas如何对数据集随机抽样
Jul 29 Python
深入浅析Python 命令行模块 Click
Mar 11 Python
python使用matplotlib:subplot绘制多个子图的示例
Sep 24 Python
最新版 Windows10上安装Python 3.8.5的步骤详解
Nov 28 Python
Python编程super应用场景及示例解析
Oct 05 Python
python 多线程实现检测服务器在线情况
Nov 25 #Python
Python中time模块与datetime模块在使用中的不同之处
Nov 24 #Python
简单解决Python文件中文编码问题
Nov 22 #Python
Python制作简单的网页爬虫
Nov 22 #Python
Python编程中使用Pillow来处理图像的基础教程
Nov 20 #Python
在Mac OS系统上安装Python的Pillow库的教程
Nov 20 #Python
详解Python编程中time模块的使用
Nov 20 #Python
You might like
4.与数据库的连接
2006/10/09 PHP
ecshop 订单确认中显示省市地址信息的方法
2010/03/15 PHP
关于js和php对url编码的处理方法
2014/03/04 PHP
Yii配置文件用法详解
2014/12/04 PHP
php利用cookie实现自动登录的方法
2014/12/10 PHP
ecshop后台编辑器替换成ueditor编辑器
2015/03/03 PHP
Laravel中注册Facades的步骤详解
2016/03/16 PHP
JS 用6N±1法求素数 实例教程
2009/10/20 Javascript
jQuery 连续列表实现代码
2009/12/21 Javascript
jQuery选择器全面总结
2014/01/06 Javascript
jquery根据属性和index来查找属性值并操作
2014/07/25 Javascript
原生js结合html5制作简易的双色子游戏
2015/03/30 Javascript
javascript实现html页面之间参数传递的四种方法实例分析
2015/12/15 Javascript
canvas实现图像放大镜
2017/02/06 Javascript
bootstrap响应式表格实例详解
2017/05/15 Javascript
详解关于Vue版本不匹配问题(Vue packages version mismatch)
2018/09/17 Javascript
vue实现移动端悬浮窗效果
2018/12/01 Javascript
vue的注意规范之v-if 与 v-for 一起使用教程
2019/08/04 Javascript
微信小程序实现定位及到指定位置导航的示例代码
2019/08/20 Javascript
python 哈希表实现简单python字典代码实例
2019/09/27 Python
Python selenium模块实现定位过程解析
2020/07/09 Python
Windows环境下Python3.6.8 importError: DLLload failed:找不到指定的模块
2020/11/01 Python
用python读取xlsx文件
2020/12/17 Python
先进个人获奖感言
2014/01/24 职场文书
学校门卫管理制度
2014/01/30 职场文书
致标枪运动员加油稿
2014/02/15 职场文书
预备党员入党自我评价范文
2014/03/10 职场文书
终止劳动合同协议书
2014/04/14 职场文书
教师批评与自我批评发言稿
2014/10/15 职场文书
幼儿园教研工作总结2015
2015/05/12 职场文书
撤诉申请书法院范本
2015/05/18 职场文书
行政处罚决定书
2015/06/24 职场文书
董事长新年致辞
2015/07/29 职场文书
煤矿施工安全协议书
2016/03/22 职场文书
Django实现在线无水印抖音视频下载(附源码及地址)
2021/05/06 Python
Spring boot应用启动后首次访问很慢的解决方案
2021/06/23 Java/Android