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中的yield使用方法
Feb 11 Python
Python中文编码那些事
Jun 25 Python
Python编程实现粒子群算法(PSO)详解
Nov 13 Python
Python读写及备份oracle数据库操作示例
May 17 Python
python+pyqt5实现KFC点餐收银系统
Jan 24 Python
python执行scp命令拷贝文件及文件夹到远程主机的目录方法
Jul 08 Python
Django Rest framework解析器和渲染器详解
Jul 25 Python
pycharm编写spark程序,导入pyspark包的3中实现方法
Aug 02 Python
TensorFlow梯度求解tf.gradients实例
Feb 04 Python
关于Python字符串显示u...的解决方式
Mar 06 Python
pandas 像SQL一样使用WHERE IN查询条件说明
Jun 05 Python
Python使用cn2an实现中文数字与阿拉伯数字的相互转换
Mar 02 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
dedecms采集中可以过滤多行代码的正则表达式
2007/03/17 PHP
php闭包中使用use声明变量的作用域实例分析
2018/08/09 PHP
PHP如何使用JWT做Api接口身份认证的实现
2020/02/03 PHP
php实例分享之实现显示网站运行时间
2014/05/20 Javascript
对比分析json及XML
2014/11/28 Javascript
node.js中的fs.unlink方法使用说明
2014/12/15 Javascript
zepto.js中tap事件阻止冒泡的实现方法
2015/02/12 Javascript
关于javascript原型的修改与重写(覆盖)差别详解
2016/08/31 Javascript
bootstrap读书笔记之CSS组件(上)
2016/10/17 Javascript
jquery 追加元素append、prepend、before、after用法与区别分析
2016/12/02 Javascript
vue项目中做编辑功能传递数据时遇到问题的解决方法
2016/12/19 Javascript
TypeScript学习之强制类型的转换
2016/12/27 Javascript
Vue-cli Eslint在vscode里代码自动格式化的方法
2018/02/23 Javascript
vue使用监听实现全选反选功能
2018/07/06 Javascript
Python使用QQ邮箱发送Email的方法实例
2017/02/09 Python
Python使用openpyxl读写excel文件的方法
2017/06/30 Python
Python爬取附近餐馆信息代码示例
2017/12/09 Python
今天 平安夜 Python 送你一顶圣诞帽 @微信官方
2017/12/25 Python
python框架中flask知识点总结
2018/08/17 Python
pygame游戏之旅 添加碰撞效果的方法
2018/11/20 Python
python实现倒计时小工具
2019/07/29 Python
Python Django实现layui风格+django分页功能的例子
2019/08/29 Python
Python检查图片是否损坏及图片类型是否正确过程详解
2019/09/30 Python
python实现堆排序的实例讲解
2020/02/21 Python
django项目中使用云片网发送短信验证码的实现
2021/01/19 Python
十一个高级MySql面试题
2014/10/06 面试题
给朋友的道歉信
2014/01/09 职场文书
小学英语教学反思
2014/01/30 职场文书
《夜晚的实验》教学反思
2014/02/19 职场文书
心理学专业求职信
2014/06/16 职场文书
忠诚奉献演讲稿
2014/09/12 职场文书
2014国庆节标语口号
2014/09/19 职场文书
2014企业年终工作总结
2014/12/23 职场文书
宾馆卫生管理制度
2015/08/06 职场文书
简短清晨问候语
2015/11/10 职场文书
SQL中的连接查询详解
2022/06/21 SQL Server