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 IDE PyCharm的基本快捷键和配置简介
Nov 04 Python
Python变量和字符串详解
Apr 29 Python
Python双精度浮点数运算并分行显示操作示例
Jul 21 Python
Python2包含中文报错的解决方法
Jul 09 Python
Python3中关于cookie的创建与保存
Oct 21 Python
解决PyCharm的Python.exe已经停止工作的问题
Nov 29 Python
使用Python画股票的K线图的方法步骤
Jun 28 Python
Python3操作Excel文件(读写)的简单实例
Sep 02 Python
Django中使用haystack+whoosh实现搜索功能
Oct 08 Python
30秒学会30个超实用Python代码片段【收藏版】
Oct 15 Python
Python基于paramunittest模块实现excl参数化
Apr 26 Python
聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明
Mar 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_SELF的安全问题
2009/09/05 PHP
创建配置文件 用PHP写出自己的BLOG系统 2
2010/04/12 PHP
php结合ACCESS的跨库查询功能
2015/06/12 PHP
php异常处理方法实例汇总
2015/06/24 PHP
PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)
2015/09/22 PHP
Zend Framework入门教程之Zend_Config组件用法详解
2016/12/09 PHP
Laravel框架创建路由的方法详解
2019/09/04 PHP
laravel 查询数据库获取结果实现判断是否为空
2019/10/24 PHP
Prototype PeriodicalExecuter对象 学习
2009/07/19 Javascript
js文本框输入点回车触发确定兼容IE、FF等
2013/11/19 Javascript
XML文件转化成NSData对象的方法
2015/08/12 Javascript
JavaScript获取客户端IP的方法(新方法)
2016/03/11 Javascript
vue2滚动条加载更多数据实现代码
2017/01/10 Javascript
浅谈Javascript事件对象
2017/02/05 Javascript
Vue指令的钩子函数使用方法
2017/03/20 Javascript
详解用webpack2.0构建vue2.0超详细精简版
2017/04/05 Javascript
JS ES6中setTimeout函数的执行上下文示例
2017/04/27 Javascript
JavaScript文件的同步和异步加载的实现代码
2017/08/19 Javascript
bootstrap-table组合表头的实现方法
2017/09/07 Javascript
vue element自定义表单验证请求后端接口验证
2019/12/11 Javascript
在Python中实现shuffle给列表洗牌
2018/11/08 Python
Python创建数字列表的示例
2019/11/28 Python
Python中文分词库jieba,pkusegwg性能准确度比较
2020/02/11 Python
java关于string最常出现的面试题整理
2021/01/18 Python
李维斯德国官方网上商店:Levi’s德国
2016/09/10 全球购物
SportsDirect.com新加坡:英国第一体育零售商
2019/03/30 全球购物
《小山羊和小灰兔》教学反思
2014/02/19 职场文书
毕业生就业意向书
2014/04/01 职场文书
设备售后服务承诺书
2014/05/30 职场文书
运动会演讲稿300字
2014/08/25 职场文书
2015年信访工作总结
2015/04/07 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
2016年党员读书月活动总结
2016/04/06 职场文书
python实现简易自习室座位预约系统
2021/06/30 Python
redis 存储对象的方法对比分析
2021/08/02 Redis
CSS巧用渐变实现高级感背景光动画
2021/12/06 HTML / CSS