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中操作字典之fromkeys()方法的使用
May 21 Python
Python实现文件按照日期命名的方法
Jul 09 Python
Python+MongoDB自增键值的简单实现
Nov 04 Python
pycharm安装图文教程
May 02 Python
Django的HttpRequest和HttpResponse对象详解
Jan 26 Python
Python 解决中文写入Excel时抛异常的问题
May 03 Python
对python Tkinter Text的用法详解
Oct 11 Python
python与C、C++混编的四种方式(小结)
Jul 15 Python
利用pyecharts实现地图可视化的例子
Aug 12 Python
Django+zTree构建组织架构树的方法
Aug 21 Python
Tensorflow 模型转换 .pb convert to .lite实例
Feb 12 Python
在Python中字典按值排序的实现方法
Nov 12 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
关于mysql 字段的那个点为是定界符
2007/01/15 PHP
php的array_multisort()使用方法介绍
2012/05/16 PHP
php并发加锁示例
2016/10/17 PHP
javascript判断单选框或复选框是否选中方法集锦
2007/04/04 Javascript
用javascript实现读取txt文档的脚本
2007/07/20 Javascript
JavaScript 继承详解(四)
2009/07/13 Javascript
模仿JQuery.extend函数扩展自己对象的js代码
2009/12/09 Javascript
Microsoft Ajax Minifier 压缩javascript的方法
2010/03/05 Javascript
jQuery 隐藏和显示 input 默认值示例
2014/06/03 Javascript
JS、CSS以及img对DOMContentLoaded事件的影响
2014/08/12 Javascript
使用纯javascript实现放大镜效果
2015/03/18 Javascript
基于jQuery实现在线选座之高铁版
2015/08/24 Javascript
简单理解vue中Props属性
2016/10/27 Javascript
深入理解Node.js中通用基础设计模式
2017/09/19 Javascript
jQuery.validate.js表单验证插件的使用代码详解
2018/10/22 jQuery
JS实现查找数组中对象的属性值是否存在示例
2019/05/24 Javascript
如何利用JavaScript编写更好的条件语句详解
2020/08/10 Javascript
wxpython中利用线程防止假死的实现方法
2014/08/11 Python
Python实现拼接多张图片的方法
2014/12/01 Python
用Python登录Gmail并发送Gmail邮件的教程
2015/04/17 Python
分析python切片原理和方法
2017/12/19 Python
Python异常的检测和处理方法
2018/10/26 Python
Python学习笔记之变量、自定义函数用法示例
2019/05/28 Python
浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别
2020/06/12 Python
python实现梯度下降算法的实例详解
2020/08/17 Python
Restful_framework视图组件代码实例解析
2020/11/17 Python
HTML5在canvas中绘制复杂形状附效果截图
2014/06/23 HTML / CSS
如何提高SQL Server的安全性
2016/07/25 面试题
英语生日邀请函
2014/01/23 职场文书
教师专业自荐书范文
2014/02/10 职场文书
高中军训感言1000字
2014/03/01 职场文书
党员承诺书格式
2014/05/21 职场文书
CSS 新特性 contain控制页面的重绘与重排问题
2021/04/30 HTML / CSS
如何获取numpy array前N个最大值
2021/05/14 Python
详解TypeScript的基础类型
2022/02/18 Javascript
ssh服务器拒绝了密码 请再试一次已解决(亲测有效)
2022/08/14 Servers