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 相关文章推荐
pycharm 使用心得(六)进行简单的数据库管理
Jun 06 Python
用Python计算三角函数之acos()方法的使用
May 15 Python
利用Python的Django框架生成PDF文件的教程
Jul 22 Python
整理Python 常用string函数(收藏)
May 30 Python
解决Django模板无法使用perms变量问题的方法
Sep 10 Python
Python实现压缩文件夹与解压缩zip文件的方法
Sep 01 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
Aug 12 Python
django formset实现数据表的批量操作的示例代码
Dec 06 Python
python通过移动端访问查看电脑界面
Jan 06 Python
使用Keras中的ImageDataGenerator进行批次读图方式
Jun 17 Python
python3代码中实现加法重载的实例
Dec 03 Python
Python开发五子棋小游戏
May 02 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
PHP stristr() 函数(不区分大小写的字符串查找)
2010/06/03 PHP
使ecshop模板中可引用常量的实现方法
2011/06/02 PHP
php 字符串压缩方法比较示例
2014/01/23 PHP
php中session与cookie的比较
2015/01/27 PHP
php实现SAE上使用storage上传与下载文件的方法
2015/06/29 PHP
PHP 将dataurl转成图片image方法总结
2016/10/14 PHP
PHP的mysqli_thread_id()函数讲解
2019/01/24 PHP
js数组的操作指南
2014/12/28 Javascript
javacript使用break内层跳出外层循环分析
2015/01/12 Javascript
jQuery实现的Div窗口震动效果实例
2015/08/07 Javascript
Google 地图控件集详解及实例代码
2016/08/06 Javascript
使用vue与jquery实时监听用户输入状态的操作代码
2017/09/19 jQuery
使用Bootstrap + Vue.js实现表格的动态展示、新增和删除功能
2017/11/27 Javascript
微信小程序自定义组件实现tabs选项卡功能
2018/07/14 Javascript
vue vantUI实现文件(图片、文档、视频、音频)上传(多文件)
2019/10/15 Javascript
webpack中的模式(mode)使用详解
2020/02/20 Javascript
[04:29]2014DOTA2国际邀请赛 主赛事第三日TOPPLAY
2014/07/21 DOTA
Python网页解析利器BeautifulSoup安装使用介绍
2015/03/17 Python
Python数据操作方法封装类实例
2017/06/23 Python
python3.5 email实现发送邮件功能
2018/05/22 Python
python 实现数字字符串左侧补零的方法
2018/12/04 Python
Python button选取本地图片并显示的实例
2019/06/13 Python
Python加密模块的hashlib,hmac模块使用解析
2020/01/02 Python
使用keras2.0 将Merge层改为函数式
2020/05/23 Python
keras 自定义loss model.add_loss的使用详解
2020/06/22 Python
解决Pytorch自定义层出现多Variable共享内存错误问题
2020/06/28 Python
python更新数据库中某个字段的数据(方法详解)
2020/11/18 Python
上海某公司.net方向笔试题
2014/09/14 面试题
小学开学典礼主持词
2014/03/19 职场文书
工作证明英文模板
2014/10/21 职场文书
会计主管岗位职责
2015/04/02 职场文书
2015年司法所工作总结
2015/04/27 职场文书
音乐研修感悟
2015/11/18 职场文书
k-means & DBSCAN 总结
2021/04/27 Python
Python+uiautomator2实现自动刷抖音视频功能
2021/04/29 Python
Moment的feature导致线上bug解决分析
2022/09/23 Javascript