python常用数据结构集合详解
set集合
集合定义与使用
集合定义:
- --无序的唯一对象集合
- --用大括号{}包围,对象相互之间使用逗号分隔
- --集合是动态的,可以随时添加或删除元素
- --集合是异构的,可以包含不同类型的数据
集合使用:创建
创建:
- --通过使用{}填充元素
- --通过构造方法set()
- --通过集合推导式
# 集合使用:创建 # 创建 # --通过使用{}填充元素 a = {1, 2, 3} print(type(a), a) # --通过构造方法set() b = set("1") print(type(b), b) c = [1, 2, 3, "happy"] d = set(c) print(type(d), d) # --通过集合推导式 e = {i for i in c} print(type(e), e) # --注意:不可传空{}来定义集合,会得到字典类型 f = {} print(type(f))
集合使用:成员检测
- in:判断元素是否在集合中存在
- not in :判断元素是否在集合中不存在
# 集合使用:成员检测 # in:判断元素是否在集合中存在 # not in :判断元素是否在集合中不存在 a = {1, 2, 3, 4, 5} print(1 in a) print(6 in a) print(2 not in a) print(6 not in a)
集合常用方法
add()
add(item):将单个对象添加到集合中
入参:对象item
返回:None
# add() # add(item):将单个对象添加到集合中 # 入参:对象item # 返回:None a = {1, 2, 3} a.add(4) print(a)
update()
update(iterable)
批量添加来自可迭代对象中的所有元素
入参:可迭代对象tierable
返回:None
# update() # update(iterable) # 批量添加来自可迭代对象中的所有元素 # 入参:可迭代对象iterable # 返回:None a = {1, 2, 3} a.update("happy") print(a)
remove()
remove(item):从几个中移除指定元素item
入参:指定元素值
返回:None
如果item不存在与集合中则会引发KeyError
# remove() # remove(item):从几个中移除指定元素item # 入参:指定元素值 # 返回:None # 如果item不存在与集合中则会引发KeyError a = {1, 2, 3, 4} a.remove(1) print(a)
discard()
discard(item):从集合中移除指定对象item
入参:指定对象值
返回:None
元素item不存在没印象,不会抛出KeyError错误
# discard() # discard(item):从集合中移除指定对象item # 入参:指定对象值 # 返回:None # 元素item不存在没印象,不会抛出KeyError错误 a = {1, 2, 3, "happy"} a.discard(2) print(a)
pop()
pop():随机从集合中移除并返回一个元素
入参:无
返回:被移除的元素
如果集合为空则会引发KeyError错误
# pop() # pop():随机从集合中移除并返回一个元素 # 入参:无 # 返回:被移除的元素 # 如果集合为空则会引发KeyError错误 a = {1, 2, 3, 4, "happy"} print(a.pop()) print(a)
clear()
clear():清空集合,移除所有元素
入参:无
返回:None
# clear() # clear():清空集合,移除所有元素 # 入参:无 # 返回:None a = {1, 2, 3, "happy"} a.clear() print(a)
集合运算
交集运算
intersection()
操作符:&
# 交集运算 # intersection() # 操作符:& a = {1, 2, 3} b = {2, 3, 4} print(a.intersection(b)) print(a & b)
并集运算
union()
操作符:|
# 并集运算 # union() # 操作符:| a = {1, 2, 3} b = {2, 3, 4, 5} print(a.union(b)) print(a | b)
差集运算
difference()
操作符:-
# 差集运算 # difference() # 操作符:- a = {1, 2, 3, 4} b = {2, 3, 4, 5} print(a.difference(b)) print(a - b) print(b.difference(a)) print(b - a)
集合推导式
类似列表推导式,同时集合支持集合推导式
语法:{i for i in ... if ...}
# 集合推导式 # 类似列表推导式,同时集合支持集合推导式 # 语法:{i for i in ... if ...} a = {i for i in [1, 2, 3, 4] if i % 2 == 0} print(a)
到此这篇关于python常用数据结构集合详解的文章就介绍到这了,更多相关python 集合内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Python TypeError: ‘float‘ object is not subscriptable错
发现问题写python的时候出现了这个错,所以想着给大家总结下,这篇文章主要给大家介绍了关于Python TypeError: ‘float‘ object is not subscriptable错误的解决办法,需要的朋友可以参考下2022-12-12python3 使用OpenCV计算滑块拼图验证码缺口位置(场景示例)
这篇文章主要介绍了python3 使用OpenCV计算滑块拼图验证码缺口位置,本文通过场景示例给大家详细介绍,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-08-08
最新评论