《Python3程序开发指南》笔记。

python提供了2种内置的集合类型:可变的set类型、固定的frozenset类型。

只有可哈希运算的对象可添加到集合中。可哈希的数据类型:float、frozenset、int、str、tuple。不是可哈希的:dict、list、set

集合方法与操作符

s.add(x)  
s.clear()  
#s.copy() 返回集合 s 的浅拷贝
#s.difference(t) s-t 返回一个新集合,其中包含在s中但不在集合t中的数据项
s.difference_update(t) s-=t 移除每一个在集合t 但不在集合s中的项
s.discard(x)

如果数据项x在集合s中,就移除该数据项

参见:s.remove()

s.intersection(t) s&t 返回一个新集合,集合求交集
s.intersection_update(t) s&=t 使s包含s与t的交集
#s.isdisjoin(t) 如果s与t没有相同的项,就返回True
#s.issubset(t) s<=t

s是t的子集,返回True

s<t:真子集

#s.issuperset s>=t

s与t相同,或是t的超集,返回True

s>t:t为s的真子集

s.pop() 返回并移除s中的一个随机项,如果s为空集,产生KeyError异常
s.remove(x)

从s中移除x,如果s中不包含x,产生KeyError异常

参见:s.discard()

#s.symmetric_difference(t) s^t 返回一个新集合,其中包含s与t并集,但除去交集的数据项
s.symmetric_difference_update(t) s^=t  
#s.union(t) s|t 并集
s.update(t) s|=t  

集合内涵

两种语法格式:

[expression for item in iterable]

[expression for item in iterable if condition]

例如,files中的一个文件夹列表,( ⊙ o ⊙ )是的集合html只存放那些以.htm和.html结尾的文件名

>>> html={x for x in files if x.lower().endswith((".html",".htm"))}

固定集合---frozenset

固定集合支持的方法在上面的表中用@标明。

二元运算符应用于集合和固定集合时,得到的类型与左边操作数的数据类型一致,例如,f为固定集合,s为集合,f&s产生一个固定集合,s&f产生一个集合。

python集合set,frozenset--笔记的更多相关文章

  1. Python Built-in Function 学习笔记

    Python Built-in Function 学习笔记 1. 匿名函数 1.1 什么是匿名函数 python允许使用lambda来创建一个匿名函数,匿名是因为他不需要以标准的方式来声明,比如def ...

  2. Python 集合set添加删除、交集、并集、集合操作符号

    在Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 1. ...

  3. [转]python集合set

    Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 来源网 ...

  4. Python学习的个人笔记(基础语法)

    Python学习的个人笔记 题外话: 我是一个大二的计算机系的学生,这份python学习个人笔记是趁寒假这一周在慕课网,w3cschool,还有借鉴了一些博客,资料整理出来的,用于自己方便的时候查阅, ...

  5. python集合类型

    集合类型简介 集合也是容器,其内元素都是无序.唯一.不可变的.它常用来做成员测试.移除重复数据.数据计算(比如交集.并集.差集). 集合Set是dict的无value版.集合也使用大括号包围: > ...

  6. Python—集合的操作、文件的操作

    1.集合的操作 2.文件的操作 1.集合的操作 定义: 1.不同元素组成,自动去重 2.无序 3.集合中的元素必须是不可变类型 1.集合的定义: >>> s1 = set('abcd ...

  7. 《Python核心编程》笔记

    1 python是大小写敏感的 2 遍历一个字典的键值: for a in dict_obj.keys(): print a 3 列表解析功能可以让代码很简洁,比如:squared = [x ** 2 ...

  8. Python 集合内置函数大全(非常全!)

    Python集合内置函数操作大全 集合(s).方法名 等价符号 方法说明 s.issubset(t) s <= t 子集测试(允许不严格意义上的子集):s 中所有的元素都是 t 的成员   s ...

  9. python数据分析入门学习笔记儿

    学习利用python进行数据分析的笔记儿&下星期二内部交流会要讲的内容,一并分享给大家.博主粗心大意,有什么不对的地方欢迎指正~还有许多尚待完善的地方,待我一边学习一边完善~ 前言:各种和数据 ...

  10. 从入门到自闭之Python集合,深浅拷贝(大坑)

    小数据池 int: -5~256 str: 字母,数字长度任意符合驻留机制 字符串进行乘法时总长度不能超过20 特殊符号进行乘法时只能乘以0 代码块: 一个py文件,一个函数,一个模块,终端中的每一行 ...

随机推荐

  1. MTP设备无法安装驱动的解决办法

    1,进入设备管理器右击带黄色问号的MTP,选择“属性”,“详细信息”“设备范例 ID”(用Ctrl+C复制). 2,找到c:\windows\inf\wpdmtp.inf打开(或者通过运行打开),找到 ...

  2. C++多重继承虚表的内存分布

    接前面虚表的内存分布,今天重点看多重继承的虚表内存分布,简单的说,继承几个类便有几个虚表,如下代码 class Drive : public Base1, public Base2, public B ...

  3. [转]JS继承的5种实现方式

    参考链接: http://yahaitt.iteye.com/blog/250338 虽说书上都讲过继承的方式方法,但这些东西每看一遍都多少有点新收获,所以单独拿出来放着. 1. 对象冒充 funct ...

  4. Access数据库导入到mysql数据库中

    做项目时需要查询手机号归属地的,用网上提供的接口,耗时太长,反应慢,只能自己在网上搜了一个包含所有手机号归属地的Access数据库,导入到自己的mysql数据库中 Access数据库导入到mysql中 ...

  5. 10:Hello, World!的大小

    总时间限制:  1000ms 内存限制:  65536kB 描述 还记得在上一章里,我们曾经输出过的“Hello, World!”吗? 它虽然不是本章所涉及的基本数据类型的数据,但我们同样可以用siz ...

  6. Scheme是什么、怎么自定义Scheme、JLRoutes的使用-备

    转到移动端开发后居然现在才用到Scheme真是惭愧惭愧. URL Scheme是什么 相信大家都知道URL. http://www.apple.com就是一个URL. 而://之前的部分就称为Sche ...

  7. nutch fetcher.server.delay

    1 配置因素 <property>  <name>fetcher.server.delay</name>  <value>0.0</value&g ...

  8. 汇编-显示我放到AL中的数值

    按书上练习,有一些我看不懂. . .model flat,stdcall option casemap:none include \masmplus\include\windows.inc inclu ...

  9. Qt:截图工具,任意大小矩形截图、全屏截图

    http://blog.csdn.net/rl529014/article/details/53146440

  10. eclipse能够自动提示变量名.

    打开 Eclipse -> Window -> Perferences -> Java -> Editor -> Content Assist,在右边最下面一栏找到 au ...