前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Python核心数据结构探秘】:元组与字典的完美协奏曲

【Python核心数据结构探秘】:元组与字典的完美协奏曲

作者头像
爱喝兽奶的熊孩子
发布2024-06-11 08:39:30
550
发布2024-06-11 08:39:30
举报
文章被收录于专栏:C语言基础C语言基础

🚀一、元组

  • 元组:tuple
  • 元组符号:()
  • 元组属于不可变类型(不可变序列)
  • 元组是序列类型(容器序列)
  • 元组不提供方法修改,但是可以转类型进行操作
⭐1. 元组查询的相关方法
  • index 查询指定元素第一次出现的下标

注意:

  • 如果元组中不存在你要查找的值,index() 方法会抛出一个 ValueError 异常。
  • 由于元组是不可变的,找到索引通常是为了了解结构,而不是为了修改元组内容(因为无法修改)。
  • index() 方法只返回第一个匹配项的索引,即使该值在元组中出现了多次。
  • count 查询指定元素出现的次数

count() 方法,用于统计元组中某个元素出现的次数。

  • tuple:你想要在其内部计数的元组。
  • element:你想要统计其出现次数的元素。
❤️2. 坑点

在Python中,元组是一种不可变的序列类型。当定义一个只包含一个元素的元组时,确实会出现一些特殊情况。如果你直接写作(元素),Python不会把它解析为一个元组,而是将其视为一个单纯的括号包围的表达式。为了明确表示这是一个只有一个元素的元组,你应该在元素后面加上一个逗号,即(元素,)。

  • 不加逗号:single_item = (42),这在Python中实际上被视为一个整数42,而不是一个元组。
  • 加逗号:single_tuple = (42,),这样就明确地定义了一个只包含一个元素42的元组。

这是因为括号()在Python中还用于表示运算优先级,以及在函数调用时包围参数列表。为了消除歧义,当创建一个只有一个元素的元组时,添加逗号是必要的。

🎬3. 修改元组
🌈二、集合
  • 集合:set
  • 集合符号:{数据1,数据2…}
  • 集合属于可变类型
  • 集合数据是无序的(无序性)
  • 集合每一个元素是唯一的(唯一性)
  • 集合不属于序列
⭐1. 集合踩坑
空集合问题
❤️2. 集合特点
💥无序性
💥唯一性
☔3. 集合(交,并,补)
🎬4. 集合操作方法
💥💥增
  • add: 是把要传入的元素做为一个整个添加到集合中

集合(set)是一个无序的、不重复元素的序列。add() 方法是集合的一个内置方法,用于向集合中添加一个元素。如果添加的元素已经在集合中存在,则该方法不会有任何效果,因为集合的特性决定了它不能包含重复的元素。

  • set:你要向其添加元素的集合。
  • element:你想要添加到集合中的元素。
💥💥删
  • pop: 删除并且返回 set “集合”中的一个不确定的元素, 如果集合为空则引发 KeyError

集合(set)的 pop() 方法用于随机移除集合中的一个元素并返回该元素。因为集合是无序的,所以无法预测哪个元素会被移除。如果集合为空,调用 pop() 方法会引发 KeyError 异常。

  • set:你要从中移除并返回一个随机元素的集合。
  • element:被移除的元素。
  • remove:从 set “集合”中删除指定元素 , 如果不存在则引发 KeyError

集合(set)的 remove() 方法用于移除集合中指定的元素。如果元素存在于集合中,该方法会移除这个元素,并且不返回任何值。如果尝试移除一个不存在于集合中的元素,remove() 方法会引发 KeyError 异常。 语法:

  • set:你想要从中移除元素的集合。
  • element:你想要从集合中移除的指定元素。
  • discard: 如果在 set “集合”中存在元素 x, 则删除 ,不存在不报错
  • clear: 清空集合里面的所有元素
💥💥(增)
  • update:可以在集合里面添加多项
💥💥查
  • isdisjoint: 是否无交集(无交集:True 有交集:False)
  • issubset: 判断指定集合是否为该方法参数集合的子集。 是True, 不是False
  • issuperset : 判断该方法的参数集合是否为指定集合的子集
  • intersection: 返回集合的交集
  • intersection_update: 移除 指定集合 中不存在于 方法中的接收集合 中的元素(修改当前集合,使其只包含与另一个指定集合相同的元素。)
  • symmetric_difference: 返回两个集合中不重复的元素集合。
  • symmetric_difference_update: 用于修改当前集合,使其只包含存在于当前集合或另一个指定集合中的元素,但不包含同时存在于两个集合中的元素。
  • union: 返回两个集合的并集两个集合的并集
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 🚀一、元组
    • ⭐1. 元组查询的相关方法
      • ❤️2. 坑点
        • 🎬3. 修改元组
          • 🌈二、集合
            • ⭐1. 集合踩坑
          • 空集合问题
            • ❤️2. 集合特点
            • ☔3. 集合(交,并,补)
            • 🎬4. 集合操作方法
        相关产品与服务
        容器服务
        腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档