python教程系列(一.4.4、python内置函数之set)

在这里插入图片描述

集合-set

集合是高中数据中的一个概念。

确定的一堆无序数据。集合中的每个数据称为一个元素

集合的定义

1.创建空集合

变量 = set()

2.创建多个数据的集合

变量 = {值,值,值....}

注意:集合是内部元素绝对唯一的数据,所以集合中出现多个相同数据时只会保留一份

集合的特征

1.集合是一种无序的数据类型,无法通过索引和分片进行操作

2.集合是内部元素绝对唯一的数据,常常用于去掉重复数据

3.集合的数据,str,int,float,bool,tuple,冰冻集合。

集合序列操作

成员检测操作

数据 in 集合

    检测数据是否在集合当中

数据 not in 集合

    检测数据是否不在集合当中

集合遍历操作

普通集合遍历

集合 = {值,值,值....}

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)
返回值:新的集合

issubset() 检测一个集合是否是另外一个集合的子集

格式:集合1.issubset(集合2)
返回值:布尔值

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

冰冻集合就是不可以进行任何修改相关操作的集合

创建冰冻集合

创建空的冰冻集合

变量 = frozenset()

创建具有数据的冰冻集合

变量 = fronzenset(一个序列)

操作方法和函数

冰冻集合的操作相关函数和方法同集合类型一样。

只是不可以使用修改集合相关的方法和函数

注意

frozenset 和普通的集合一样没有什么本质区别,能够使用的函数数量不一样,仅此而已哦
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值