Python中集合的内建函数和内建方法学习教程


Posted in Python onAugust 19, 2015

集合内建函数和内建方法
(1)标准类型函数
       len():把集合作为参数传递给内建函数 len(),返回集合的基数(或元素的个数)。
(2)集合类型工厂函数
       set()和 frozenset()工厂函数分别用来生成可变和不可变的集合。如果不提供任何参数,默认会生成空集合。如果提供一个参数,则该参数必须是可迭代的,即一个序列或迭代器或支持迭代的一个对象,例如一个文件或一个字典。
(3)方法(所有的集合方法)
s.issubset(t)                  如果s是t的子集,则返回True,否则返回False
s.issuperset(t)               如果t是s的超集,则返回True,否则返回False
s.union(t)                       返回一个新集合,该集合是s和t的并集
s.intersection(t)            返回一个新集合,该集合是s和t的交集
s.difference(t)               返回一个新集合,该集合是 s 的成员,但不是 t 的成员
s.symmetric_difference(t)     返回一个新集合,该集合是s或t的成员,但不是s和t共有的成员
s.copy()                         返回一个新集合,它是集合s的浅复制
       内建方法copy() 没有等价的操作符。和同名的字典方法一样,copy()方法比用像set()、frozenset()或dict()这样的工厂方法复制对象的副本要快。
(4)方法(仅适用于可变集合)

可变集合类型的方法:

Python中集合的内建函数和内建方法学习教程

演示实例:
一、集合类型方法

Python中集合的内建函数和内建方法学习教程

>>> s = set('cheeseshop')
>>> t = set('bookshop')
>>> s
set(['c', 'e', 'h', 'o', 'p', 's'])
>>> t
set(['b', 'h', 'k', 'o', 'p', 's'])
>>> s.issubset(t)
False
>>> s.issuperset(t)
False
>>> s.union(t)
set(['c', 'b', 'e', 'h', 'k', 'o', 'p', 's'])
>>> s.intersection(t)
set(['h', 's', 'o', 'p'])
>>> s.difference(t)
set(['c', 'e'])
>>> s.symmetric_difference(t)
set(['b', 'e', 'k', 'c'])
>>> s.copy()
set(['p', 'c', 'e', 'h', 's', 'o'])

 

二、可变集合类型的方法

1、s.update(t)——用t中的元素修改s,即s现在包含s或t的成员。

>>> s.update(t)
>>> s
set(['c', 'b', 'e', 'h', 'k', 'o', 'p', 's'])

 

2、s.intersection_update(t)——s中的成员是共同属于s和t中的元素。

>>> s = set('cheeseshop')
>>> t = set('bookshop')
>>> s.intersection_update(t)
>>> s
set(['h', 's', 'o', 'p'])

3、s.difference_update(t)——s中的成员是属于s但不包含在t中的元素。

>>> s = set('cheeseshop')
>>> t = set('bookshop')
>>> s.difference_update(t)
>>> s
set(['c', 'e'])

4、s.symmetric_difference_update(t)——s中的成员更新为那些包含在s或t中,但不是s和t共有的元素。

>>> s = set('cheeseshop')
>>> t = set('bookshop')
>>> s.symmetric_difference_update(t)
>>> s
set(['c', 'b', 'e', 'k'])

5、s.add(obj)——在集合s中添加对象obj。

>>> s.add('o')
>>> s
set(['c', 'b', 'e', 'k', 'o'])

6、s.remove(obj)——从集合s中删除对象obj,如果obj不是集合s中的元素(obj not in s),将引发KeyError。

<p>>>> s.remove('b')
>>> s
set(['c', 'e', 'k', 'o'])
>>> s.remove('a')</p><p>Traceback (most recent call last):
 File "<pyshell#53>", line 1, in <module>
  s.remove('a')
KeyError: 'a'
</p>

7、s.discard(obj)——如果obj是集合s中的元素,从集合s中删除对象obj。

>>> s.discard('a')
>>> s
set(['c', 'e', 'k', 'o'])
>>> s.discard('e')
>>> s
set(['c', 'k', 'o'])

8、s.pop()——删除集合是中的任意一个对象,并返回它。

>>> s.pop()
'c'
>>> s
set(['k', 'o'])

9、s.clear()——删除集合s中的所有元素。

>>> s.clear()
>>> s
set([])
Python 相关文章推荐
使用python的chardet库获得文件编码并修改编码
Jan 22 Python
Python中使用Flask、MongoDB搭建简易图片服务器
Feb 04 Python
pyshp创建shp点文件的方法
Dec 31 Python
python钉钉机器人运维脚本监控实例
Feb 20 Python
python内存管理机制原理详解
Aug 12 Python
pandas read_excel()和to_excel()函数解析
Sep 19 Python
python GUI库图形界面开发之PyQt5不规则窗口实现与显示GIF动画的详细方法与实例
Mar 09 Python
Python多线程操作之互斥锁、递归锁、信号量、事件实例详解
Mar 24 Python
Jupyter Notebook折叠输出的内容实例
Apr 22 Python
Keras官方中文文档:性能评估Metrices详解
Jun 15 Python
详解用Python爬虫获取百度企业信用中企业基本信息
Jul 02 Python
详解Python如何批量采集京东商品数据流程
Jan 22 Python
深入解析Python中的集合类型操作符
Aug 19 #Python
Python中的集合类型知识讲解
Aug 19 #Python
深入理解Python中字典的键的使用
Aug 19 #Python
详解Python中映射类型的内建函数和工厂函数
Aug 19 #Python
详解Python中映射类型(字典)操作符的概念和使用
Aug 19 #Python
Python中字典的基础知识归纳小结
Aug 19 #Python
Python在Windows和在Linux下调用动态链接库的教程
Aug 18 #Python
You might like
php学习之 认清变量的作用范围
2010/01/26 PHP
php中$美元符号与Zen Coding冲突问题解决方法分享
2014/05/28 PHP
IE FF OPERA都可用的弹出层实现代码
2009/09/29 Javascript
JSQL 批量图片切换的实现代码
2010/05/05 Javascript
JavaScript高级程序设计(第3版)学习笔记4 js运算符和操作符
2012/10/11 Javascript
关于jquery的多个选择器的使用示例
2013/10/18 Javascript
jquery将一个表单序列化为一个对象的方法
2014/01/03 Javascript
jQuery Ajax中的事件详细介绍
2015/04/16 Javascript
详解javascript实现瀑布流绝对式布局
2016/01/29 Javascript
JS 通过系统时间限定动态添加 select option的实例代码
2016/06/09 Javascript
微信小程序  action-sheet详解及实例代码
2016/11/09 Javascript
JavaScript实现简单图片轮播效果
2017/08/21 Javascript
BootStrap自定义popover,点击区域隐藏功能的实现
2018/01/23 Javascript
基于vue.js无缝滚动效果
2018/01/25 Javascript
elementui的默认样式修改方法
2018/02/23 Javascript
jQuery实现购物车的总价计算和总价传值功能
2018/11/28 jQuery
Vue 3.x+axios跨域方案的踩坑指南
2019/07/04 Javascript
jquery实现购物车基本功能
2019/10/25 jQuery
jQuery实现点击滚动到指定元素上的方法分析
2020/03/19 jQuery
Pandas 合并多个Dataframe(merge,concat)的方法
2018/06/08 Python
基于Python实现用户管理系统
2019/02/26 Python
Pandas之Fillna填充缺失数据的方法
2019/06/25 Python
Python使用百度api做人脸对比的方法
2019/08/28 Python
pytest中文文档之编写断言
2019/09/12 Python
Python谱减法语音降噪实例
2019/12/18 Python
Python生成词云的实现代码
2020/01/14 Python
详解Python+Selenium+ChromeDriver的配置和问题解决
2021/01/19 Python
Opodo英国旅游网站:预订廉价航班、酒店和汽车租赁
2018/07/14 全球购物
机电一体化职业规划书
2014/01/07 职场文书
初一生物教学反思
2014/01/18 职场文书
市三好学生主要事迹
2014/01/28 职场文书
竞选班长演讲稿500字
2014/08/22 职场文书
房屋租赁合同补充协议
2014/10/11 职场文书
2014年检察院个人工作总结
2014/12/09 职场文书
分析Netty直接内存原理及应用
2021/06/14 Java/Android
css如何把元素固定在容器底部的四种方式
2022/06/16 HTML / CSS