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脚本对Linux服务器进行监控的教程
Apr 02 Python
Python3利用SMTP协议发送E-mail电子邮件的方法
Sep 30 Python
详解python多线程、锁、event事件机制的简单使用
Apr 27 Python
详解Django中六个常用的自定义装饰器
Jul 04 Python
Python实现的简单读写csv文件操作示例
Jul 12 Python
python利用百度AI实现文字识别功能
Nov 27 Python
使用pyqt5 tablewidget 单元格设置正则表达式
Dec 13 Python
Python3直接爬取图片URL并保存示例
Dec 18 Python
Django ValuesQuerySet转json方式
Mar 16 Python
windows上彻底删除jupyter notebook的实现
Apr 13 Python
Python函数参数分类原理详解
May 28 Python
Python中的流程控制详解
Feb 18 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
Ping服务的php实现方法,让网站快速被收录
2012/02/04 PHP
php的SimpleXML方法读写XML接口文件实例解析
2014/06/16 PHP
laravel学习教程之存取器
2016/07/30 PHP
漂亮的jquery提示效果(仿腾讯弹出层)
2013/02/05 Javascript
js实现字符串的16进制编码不加密
2014/04/25 Javascript
jQuery的css() 方法使用指南
2015/05/03 Javascript
javascript实现树形菜单的方法
2015/07/17 Javascript
jquery实现图片放大镜功能
2015/11/23 Javascript
Node.js开发者必须了解的4个JS要点
2016/02/21 Javascript
精彩的Bootstrap案例分享 重点在注释!(选项卡、栅格布局)
2016/07/01 Javascript
浅谈Angular中ngModel的$render
2016/10/24 Javascript
关于Jquery中的事件绑定总结
2016/10/26 Javascript
详解nodejs 文本操作模块-fs模块(五)
2016/12/23 NodeJs
AngularJS实现页面定时刷新
2017/03/14 Javascript
jQuery插件FusionCharts绘制2D双折线图效果示例【附demo源码】
2017/04/14 jQuery
ES6中数组array新增方法实例总结
2017/11/07 Javascript
禁止弹窗中蒙层底部页面跟随滚动的几种方法
2017/12/07 Javascript
利用Blob进行文件上传的完整步骤
2018/08/02 Javascript
Element中的Cascader(级联列表)动态加载省\市\区数据的方法
2019/03/27 Javascript
解决vue+webpack项目接口跨域出现的问题
2020/08/10 Javascript
Python 除法小技巧
2008/09/06 Python
Python Deque 模块使用详解
2014/07/04 Python
使用Python简单的实现树莓派的WEB控制
2016/02/18 Python
Python中标准库OS的常用方法总结大全
2017/07/19 Python
Django model update的多种用法介绍
2020/03/28 Python
python turtle工具绘制四叶草的实例分享
2020/02/14 Python
在HTML5 canvas里用卷积核进行图像处理的方法
2018/05/02 HTML / CSS
HTML5 embed标签定义和用法详解
2014/05/09 HTML / CSS
东南亚旅游平台:The Trip Guru
2018/01/01 全球购物
国际旅客访问北美最大的汽车租赁提供商:Alamo Rent A Car
2018/06/13 全球购物
介绍一些UNIX常用简单命令
2014/11/11 面试题
室内设计专业个人的自我评价
2013/12/18 职场文书
饭店工作计划书
2014/01/10 职场文书
学生安全责任书
2014/04/15 职场文书
材料成型及控制工程专业求职信
2014/06/19 职场文书
迎国庆主题班会
2015/08/17 职场文书