集合-set
集合是高中数据中的一个概念。
肯定的一堆无需数据,集合中的买个数据称为一个集合
集合的定义
1.建立空集合
变量 = set()
2.建立多个数据的集合
变量 = {值, 值, 值。。。}
注意:集合是内部元素绝对惟一的数据,因此集合中出现多个相同数据时只会保留一份
集合的特征
1.集合时一种无需的数据类型,没法经过索引和分片进行操做
2.集合是内部元素绝对惟一的数据,经常用于去掉重复数据
3.集合的数据,str,int ,float,bool ,tuple,冰冻集合。
集合序列操做
成员检测操做
数据 in 集合
检测数据是否在集合当中
数据 not int 集合
检测数据是否不在集合当中
集合遍历操做
普通集合遍历
集合 = { 值, 值 , 值。。。}
for 变量 in 集合
使用变量
带有元组的集合遍历
集合 = {(值1,值2.。) ,(值3,值4.。) }
for 变量1,变量2.。in 集合
使用变量1和变量等
集合内涵
普通集合遍历
新集合 = {变量 for 变量 in 集合}
带条件你的集合内部
新集合 = {变量 for 变量 in 集合 if 条件 }
多循环的集合内涵
新集合 = {变量1+变量2 for 变量1 in 集合1 for 变量2 in 集合2 if 条件}
集合函数
len()获取集合中元素的个数
格式:len(集合)
返回值:整数
max()获取集合中最大的元素
格式:max(集合)
返回值:几何中最大的值
min()获取集合中最小的元组
格式:min(集合)
返回值:集合中的最小值
set()将其余序列转化为集合类型
格式:set(序列)
返回值:集合类型
集合函数
add()向集合中添加数据
格式: 集合。add(数据)
返回值;无
注意:直接改变原有集合,还存在的数据没法添加
clear()清空集合
格式:集合.clear()
返回值:无
注意:直接改变原有集合
copy()集合繁殖
格式:集合。copy()
返回值:原集合全部数据组成的新的集合
remove()移除指定的值
格式:集合。remove(值)
返回值:无
注意:直接改变原有集合,若是要删除的值不存在,就报错
discard()移除集合中指定的值
格式:集合。discard(值)
返回值:无
注意:直接改变原有集合,若是删除的值不存在,就不做任何操做
pop()随机移除一个元素
格式:集合。pop()
返回值:被移除的元素
注意:随机移除元素,没有规律
intersection()计算两个值集合之间的交集
格式:集合1.intersection(集合2)
返回值:新的集合
difference()计算两个集合之间的差集
格式:集合1.difference(集合2)
返回值:新的集合
union()计算两个集合之间的并集操做
格式:集合1.union(集合2)
返回值:新的集合
issubse()检测一个集合是不是另一个集合的子集
格式:集合1.issubset(集合)
返回值:布尔值
issuperset()检测一个集合是不是另一个集合的超集
格式:集合1.issuperset(集合2)
返回值:布尔值
difference_update()计算集合1和集合2的差集而且将结果赋值给集合1
格式:集合1.difference_update(集合2)
返回值:无
注意:操做结果直接赋值给集合1
intersection_update()计算集合1和集合2的交集而且将结果赋值给集合1
格式 :集合1.intersection_update(集合2)
返回值:无
注意:操做结果直接赋值给集合1
update()计算集合1和集合2的并集而且将并集结果赋值给集合1
格式:集合1.update(集合2)
返回值:无
注意:操做结果直接赋值给集合1
冰冻集合/固定集合frozen
冰冻集合就是不可ui进行任何修改相关操做的集合
建立冰冻集合
建立空的冰冻集合
变量 = frozenset()
建立具备数据的冰冻集合
变量 = forzenset(一个序列)
操做方法和函数
冰冻集合的操做相关函数和方法同集合类型同样
只是不可使用修改集合相关的方法和函数
注意
frozenset和普通的集合同样没有社么本质区别,可以使用的函数数量不同,仅此而已