我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python常用数据结构集合详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

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 集合内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python常用数据结构集合详解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

(python)数据结构---集合

一、描述set翻译为集合set是可变的、无序的、不可重复的set的元素要求可哈西(不可变的数据类型可哈西,可变的数据类型不可哈希)set是无序的,因此不可以索引,也不可以修改线型结构的查询时间复杂度是O(n),随着数据的增大而效率下降;se
2023-01-30

Python数据结构:集合

集合的定义 使用大括号,并且里面必须有初始值,否则是dict字典类型集合的特征集合内部的元素无序,所以不能使用索引、切片等操作集合内部的元素具有唯一性,不允许元素重复出现集合内部的元素,只能存放int, float, str, tuple等
2023-01-30

Java数据结构之集合框架与常用算法详解

Java集合框架是Java中常用的数据结构库,包括List、Set、Map等多种数据结构,支持快速的元素添加、删除、查找等操作,可以用于解决各种实际问题。Java中也有多种常用算法,如排序、查找、递归等,在数据处理和分析中有广泛应用
2023-05-18

详解常用查找数据结构及算法(Python实现)

一、基本概念 查找(Searching)就是根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素(或记录)。 查找表(Search Table):由同一类型的数据元素(或记录)构成的集合关键字(Key):数据元素中某个数据项的值
2022-06-04

Python内建数据结构详解

一、列表(List)list 是一个可以在其中存储一系列项目的数据结构。list 的项目之间需用逗号分开,并用一对中括号括将所有的项目括起来,以表明这是一个 list 。下例用以展示 list 的一些基本操作:# 定义一个 list 对象
2022-06-04

详解python数据结构之栈stack

前言 栈(Stack)是一种运算受限的线性表。 按照先进后出(FILO,First In Last Out)的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶。栈只能在一端进行插入和删除操作。 文章内容包含: (1)栈的基本格式 (2
2022-06-02

Python常用数据结构有哪些

本篇内容介绍了“Python常用数据结构有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Python 常用数据结构学习目的这个专题,尽量
2023-06-16

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录