python学习笔记(6)数据类型-集合
集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
创建格式:
parame = {value01,value02,...}
或者
set(value)
basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
print(basket) # 这里演示的是去重功能 print('orange' in basket )
print('crabgrass' in basket) # 快速判断元素是否在集合内 ##两个集合之间的运算
a = set('abracadabra')
b = set('alacazam')
print(a)
print(b) print(a - b) #集合a中包含而集合b中不包含的元素
print(a | b) #集合a或b中包含的所有元素
print(a & b) #集合a和b中都包含了的元素
print(a ^ b) #不同时包含于a和b的元素
一、集合的基本操作
#集合的基本操作
#firstset = set(('wuzm','liyanan','shanbaoliang'))
firstset = {'wuzm','liyanan','shanbaoliang'}
print(firstset) #增加元素
firstset.add('wuzongmei') #将元素添加到集合中,如果元素已存在,则不进行任何操作。
firstset.update({'abcd','hahahah'}) #update,也可以添加元素,且参数可以是列表,元组,字典等
firstset.update([,],[,]) #移除元素
firstset.remove('wuzm') #移除某个元素,不存在会发生错误
firstset.discard('wuzm') #另一个方法移除集合中的元素,且如果元素不存在,不会发生错误
firstset.pop() #设置随机删除集合中的一个元素
firstset.clear() #清空集合 len(firstset) #计算集合元素的个数
二、集合的内置方法
复制:set.copy()
firstset = {'wuzm','liyanan','shanbaoliang'}
x=firstset.copy()
print(x) #拷贝一个集合,无返回值
取差集:difference() 和 difference_update()
difference_update()
方法与 difference()
方法的区别在于 difference()
方法返回一个移除相同元素的新集合,而 difference_update()
方法是直接在原来的集合中移除元素,没有返回值。
firstset = {'wuzm','liyanan','shanbaoliang'}
secondset = {'wuzm','wuzongling','wuzongmei'} print(firstset.difference(secondset)) # 返回firstset和secondset集合的差集
#返回的集合元素包含在第一个集合中,但不包含在第二个集合(方法的参数)中。
firstset.difference_update(secondset) # 无返回值,用于移除两个集合中都存在的元素。
print(firstset) #输出{'liyanan','shanbaoliang'}
取交集:intersection() 和 intersection_update()
intersection_update()
方法不同于 intersection()
方法,因为 intersection()
方法是返回一个新的集合,而 intersection_update()
方法是在原始的集合上移除不重叠的元素。
firstset = {'wuzm','liyanan','shanbaoliang'}
secondset = {'wuzm','wuzongling','wuzongmei'} x=firstset.intersection(secondset) #返回集合的交集
print(x)
firstset.intersection_update(secondset) #返回集合的交集
print(firstset)
取返回两个集合中不重复的元素集合
symmetric_difference() 方法返回两个集合中不重复的元素集合,即会移除两个集合中都存在的元素。
symmetric_difference_update() 方法移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。
x = {'wuzm','liyanan','shanbaoliang'}
y = {'wuzm','wuzongling','wuzongmei'} x.symmetric_difference(y)
print(x)
x.symmetric_difference_update(y)
print(x)
其他内置方法
x = {'wuzm','liyanan','shanbaoliang'}
y = {'wuzm','wuzongling','wuzongmei'} print(x.isdisjoint(y)) #判断集合 y 中是否有包含 集合 x 的元素,如果不包含返回 True,否则返回 False。
print(x.issubset(y)) #判断集合x的所有元素是否都包含在指定集合y中,如果是则返回 True,否则返回 False。
print(x.issuperset(y)) #判断指定集合y的所有元素是否都包含在原始的集合x中,如果是则返回 True,否则返回 False。
print(x.union(y)) #返回两个集合的并集,即包含了所有集合的元素,重复的元素只会出现一次。
python学习笔记(6)数据类型-集合的更多相关文章
- Python学习笔记 - day3 - 数据类型及运算符
Python的数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同 ...
- python学习笔记二 数据类型(基础篇)
Python基础 对于Python,一切事物都是对象,对象基于类创建 不同类型的类可以创造出字符串,数字,列表这样的对象,比如"koka".24.['北京', '上 ...
- Python学习笔记3_数据类型
Python数据类型:数字.字符串.列表.元祖.字典 一.数字类型:(整型.长整型.浮点型.复数型) 1.整型(int):表示范围-2,147,483,648到2,147,483,647 2.长整型( ...
- 02 Python学习笔记-基本数据类型(二)
一.基本知识 1.缩进: 2.一行多条语句: 3.断行: 4.注释 # 单行注释 '''这是一段 多行注释''' 5. 变量 1. 变量类型(局部变量.全局变量.系统变量) 2. 变量赋值 多重赋值x ...
- python学习笔记:数据类型——列表/数组(list)
Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素.通过下标访问列表中的元素(又称索引.角标),下标从0开始计数.list定义,使用中括号[]. l ...
- Python学习笔记---数 数据类型 运算
python的四种数类型: 整数 int 浮点型 float 布尔 boolen 复数 complex >>> type(5)<class 'int'>>>& ...
- python学习笔记(数据类型)
python数据类型: int 类型 float 小数类型 string 字符串 布尔类型 a = True b = False 1.列表,也称数组或list或array.它的表达方式通过下标或索引或 ...
- python学习笔记之数据类型、字符编码、文件处理
1.数据类型 1.数字(int,float) 整形(int):定义 age=20 #本质age=int(20) 浮点类型:salary=3000.3 #本质salary=float(3000.3) ...
- python学习笔记:数据类型——数字、字符串、元祖、字典
计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据,需要定义不同的数 ...
- python学习笔记之数据类型(二)
上一篇博客,小波介绍了python的入门和简单流程控制,这次写python的数据类型和各种数据类型的内置方法. 一.数据类型是何方神圣? 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当 ...
随机推荐
- 9.scrapy pycharm调试小技巧,请求一次,下次直接调试,不必每次都启动整个爬虫,重新请求一整遍
pycharm调试技巧:调试时,请求一次,下次直接调试,不必每次都启动整个爬虫,重新请求一整遍 [用法]cmd命令运行:scrapy shell 网址 第一步,cmd进行一次请求: scrapy sh ...
- render_template()的各种用法
1.可以有很多个参数,第一个一定是模板的名字 2.可以传字典.列表.单个变量等等,还可以传函数,在模板中调用函数 后端函数: from flask import Flask from flask im ...
- autorclone使用心得
一边使用一边更新. 0x00 SAs最坑的那地方在于,当我新建了一个group,却只能每天添加100个SAs.但是autorclone在本地调用的SAs却有500个,这样每次copy的时候,auto ...
- c语言的各种技巧
一.参考网址 1.参考网址1:C 语言的奇技淫巧 二.
- PAT Advanced 1032 Sharing(25) [链表]
题目 To store English words, one method is to use linked lists and store a word letter by letter. To s ...
- saturates|meteoric|enclose|marooned|predators|Pioneer community|salinization|condenser|embodied
saturates渗透 meteoric蒸汽 enclose包围 Pioneer community 先锋群落 Climax community顶级群落 cumulative积累 Rebound 回弹 ...
- ZJNU 1422 - 碰撞的小球
完全弹性碰撞可以视作互相穿过 所以直接考虑只有单个小球的时候,从板子上滑下所需要的时间即可 最后以30000为界分开流读入与缓冲区优化的io方法 //Case4用缓冲区io优化会WA??? /* Wr ...
- ZJNU 1269 - 灯塔——高级
根据题目输入可以得到一个有向图 信号可以根据有向图的传递性传递,因此可以说是找到这个有向图的所有父亲即可 但又要考虑可能会出现环这类情况 所以跑一遍强连通分量模板,再根据分块后的图找到入度为0的块,把 ...
- CCPC2019网络赛
2019中国大学生程序设计竞赛(CCPC) - 网络选拔赛 A 题意:找到最小的正整数 C 使得 (A^C)&(B^C) 最小. \(A,B \le 10^9\) 签到题.这个C取 A& ...
- python-day1 爬虫基础之HTTP基本原理
经过前几天的开发环境配置,今天终于正式开启学Python之路了,今天主要看了HTTP的基本原理,下边做一个总结: 1.首先要了解的就是URI和URL,URI的全拼是Uniform Resource I ...