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生成指定长度的随机数密码
Jan 23 Python
Python中变量交换的例子
Aug 25 Python
Python中非常实用的一些功能和函数分享
Feb 14 Python
使用python 和 lint 删除项目无用资源的方法
Dec 20 Python
Sublime开发python程序的示例代码
Jan 24 Python
python实现括号匹配的思路详解
Aug 23 Python
pytorch实现用Resnet提取特征并保存为txt文件的方法
Aug 20 Python
Python多线程:主线程等待所有子线程结束代码
Apr 25 Python
Pytorch 使用 nii数据做输入数据的操作
May 26 Python
Python join()函数原理及使用方法
Nov 14 Python
Python数据可视化之绘制柱状图和条形图
May 25 Python
详解运行Python的神器Jupyter Notebook
Jun 03 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的安全策略
2006/10/09 PHP
与数据库连接
2006/10/09 PHP
深入php list()函数的详解
2013/06/05 PHP
PHP set_error_handler()函数使用详解(示例)
2013/11/12 PHP
ThinkPHP的Widget扩展实例
2014/06/19 PHP
php析构函数的简单使用说明
2015/08/24 PHP
php用户注册信息验证正则表达式
2015/11/12 PHP
Laravel 微信小程序后端搭建步骤详解
2019/11/26 PHP
JavaScript CSS修改学习第一章 查找位置
2010/02/19 Javascript
location.href 在IE6中不跳转的解决方法与推荐使用代码
2010/07/08 Javascript
js 操作符汇总
2014/11/08 Javascript
JS在可编辑的div中的光标位置插入内容的方法
2014/11/20 Javascript
使用D3.js创建物流地图的示例代码
2018/01/27 Javascript
element上传组件循环引用及简单时间倒计时的实现
2018/10/01 Javascript
layui使用form表单实现post请求页面跳转的方法
2019/09/14 Javascript
[42:32]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第二局
2016/02/27 DOTA
python模拟enum枚举类型的方法小结
2015/04/30 Python
详解python3实现的web端json通信协议
2016/12/29 Python
Python中的类与类型示例详解
2019/07/10 Python
Python shutil模块用法实例分析
2019/10/02 Python
Pytoch之torchvision.transforms图像变换实例
2019/12/30 Python
在python中求分布函数相关的包实例
2020/04/15 Python
浅谈keras使用预训练模型vgg16分类,损失和准确度不变
2020/07/02 Python
使用Html5、CSS实现文字阴影效果
2018/01/17 HTML / CSS
PAUL HEWITT手表美国站:德国北部时尚生活配饰品牌,船锚元素
2017/11/18 全球购物
澳大利亚家用电器在线商店:Billy Guyatts
2020/05/05 全球购物
mysql_pconnect()和mysql_connect()有什么区别
2012/05/25 面试题
实习生的自我鉴定范文欣赏
2013/11/20 职场文书
2014新课程改革心得体会
2014/03/10 职场文书
医德医风演讲稿
2014/05/20 职场文书
服务理念口号
2014/06/11 职场文书
2014年党员自我评议对照检查材料
2014/09/20 职场文书
夫妻双方自愿离婚协议书怎么写
2014/12/01 职场文书
2015年团队工作总结范文
2015/05/04 职场文书
python文件名批量重命名脚本实例代码
2021/04/22 Python
Vue router配置与使用分析讲解
2022/12/24 Vue.js