Python set集合类型操作总结


Posted in Python onNovember 07, 2014

Python中除了字典,列表,元组还有一个非常好用的数据结构,那就是set了,灵活的运用set可以减去不少的操作(虽然set可以用列表代替)

小例子

1.如果我要在许多列表中找出相同的项,那么用集合是最好不过的了,用集合只用一行就可以解决

x & y & z # 交集

2.去重

>>> lst = [1,2,3,4,1]

>>> print list(set(lst))

[1, 2, 3, 4]

用法

注意set因为没有位置的概念所以list方法切片什么的都没有用,需要的时候再转化为list

内建函数创建set

set([1, 2, 3, 4])

基本操作

t.add('x')            # 添加一项

s.update([10,37,42])  # 在s中添加多项
t.remove('H') # 删除一项
len(s)  # set 的长度
x in s # 测试 x 是否是 s 的成员 
x not in s   # 测试 x 是否不是 s 的成员 
s.issubset(t)  

s <= t  # 测试是否 s 中的每一个元素都在 t 中 
s.issuperset(t)  

s >= t  # 测试是否 t 中的每一个元素都在 s 中 
s.union(t)  

s | t  # 返回一个新的 set 包含 s 和 t 中的每一个元素 
s.intersection(t)  

s & t  # 返回一个新的 set 包含 s 和 t 中的公共元素 
s.difference(t)  

s - t  # 返回一个新的 set 包含 s 中有但是 t 中没有的元素 
s.symmetric_difference(t)  

s ^ t  # 返回一个新的 set 包含 s 和 t 中不重复的元素 
s.copy()  # 返回 set “s”的一个浅复制 
Python 相关文章推荐
Python装饰器decorator用法实例
Nov 10 Python
Python实现的数据结构与算法之快速排序详解
Apr 22 Python
详解字典树Trie结构及其Python代码实现
Jun 03 Python
python编程实现希尔排序
Apr 13 Python
使用pandas的DataFrame的plot方法绘制图像的实例
May 24 Python
Python qqbot 实现qq机器人的示例代码
Jul 11 Python
python中update的基本使用方法详解
Jul 17 Python
python manage.py runserver流程解析
Nov 08 Python
python3中布局背景颜色代码分析
Dec 01 Python
python实现腾讯滑块验证码识别
Apr 27 Python
pandas中DataFrame数据合并连接(merge、join、concat)
May 30 Python
python画条形图的具体代码
Apr 20 Python
数据挖掘之Apriori算法详解和Python实现代码分享
Nov 07 #Python
Python的subprocess模块总结
Nov 07 #Python
Python实现的监测服务器硬盘使用率脚本分享
Nov 07 #Python
Python实现的简单发送邮件脚本分享
Nov 07 #Python
Python获取Linux系统下的本机IP地址代码分享
Nov 07 #Python
零基础写python爬虫之使用Scrapy框架编写爬虫
Nov 07 #Python
零基础写python爬虫之爬虫框架Scrapy安装配置
Nov 06 #Python
You might like
IIS下PHP连接数据库提示mysql undefined function mysql_connect()
2010/06/04 PHP
PHP+Ajax实时自动检测是否联网的方法
2015/07/01 PHP
WordPress后台中实现图片上传功能的实例讲解
2016/01/11 PHP
解决laravel 5.1报错:No supported encrypter found的办法
2017/06/07 PHP
Yii2 如何在modules中添加验证码的方法
2017/06/19 PHP
Prototype使用指南之hash.js
2007/01/10 Javascript
利用404错误页面实现UrlRewrite的实现代码
2008/08/20 Javascript
JQuery 解析多维的Json数据格式
2009/11/02 Javascript
使用jquery实现以post打开新窗口
2014/03/19 Javascript
jquery bind(click)传参让列表中每行绑定一个事件
2014/08/06 Javascript
基于jQuery实现仿淘宝套餐选择插件
2015/03/04 Javascript
详谈Angular 2+ 的表单(一)之模板驱动型表单
2017/04/25 Javascript
Vue在 Nuxt.js 中重定向 404 页面的方法
2019/04/23 Javascript
atom-design(Vue.js移动端组件库)手势组件使用教程
2019/05/16 Javascript
python并发2之使用asyncio处理并发
2017/12/21 Python
pygame游戏之旅 添加游戏介绍
2018/11/20 Python
Python 实现遥感影像波段组合的示例代码
2019/08/04 Python
python多线程同步实例教程
2019/08/11 Python
python实现两个字典合并,两个list合并
2019/12/02 Python
Python通过两个dataframe用for循环求笛卡尔积
2020/04/29 Python
Python 程序员必须掌握的日志记录
2020/08/17 Python
HTML5 WebSocket实现点对点聊天的示例代码
2018/01/31 HTML / CSS
详解h5页面在不同ios设备上的问题总结
2019/03/01 HTML / CSS
世界排名第一的万圣节服装店:Spirit Halloween
2018/10/16 全球购物
艺术系应届生的自我评价
2013/10/19 职场文书
大学生的网上创业计划书
2013/12/31 职场文书
开工庆典邀请函范文
2014/01/16 职场文书
电脑饰品店的创业计划书
2014/01/21 职场文书
五一劳动节活动记录
2014/03/23 职场文书
全国税务系统先进集体事迹材料
2014/05/19 职场文书
模具专业求职信
2014/06/26 职场文书
早读课迟到检讨书
2014/09/25 职场文书
党的群众路线教育实践活动总结
2014/10/30 职场文书
2019年作为一名实习生的述职报告
2019/09/29 职场文书
Vue3中的Refs和Ref详情
2021/11/11 Vue.js
《最终幻想14》6.01版本4月5日推出 追加新任务新道具
2022/04/03 其他游戏