Python容器 之 元组

news2024/11/19 22:39:45

1.元组的介绍

1, 元组 tuple, 使用的是 ()

2, 元组和列表非常相似, 都可以存储多个数据, 都可以存储任意类型的数据

3, 区别就是 元组中的数据不能修改,列表中可以修改

4, 因为元组中的数据不能修改,所以只能 查询方法, 如 index, count ,支持下标切片

5, 元组, 主要用于传参返回值

 2.元组的定义

(1)类实例化方式

# 1. 类实例化方式

# 1.1 定义空元组(基本不用)
tuple1 = tuple()
print(type(tuple1), tuple1)  # <class 'tuple'> ()

# 1.2 定义空元组,也称为 类型转换 , 将列表(其他可迭代类型)转换为元组
tuple2 = tuple([1, 2, 3])
print(tuple2)  # (1, 2, 3)

 

(2)直接使用 () 定义

# 2. 直接使用 () 定义

# 2.1 定义空元组
tuple3 = ()
print(type(tuple3), tuple3)  # <class 'tuple'> ()
# 2.2 非空元组
tuple4 = (1, 2, 'hello', 3.14, True)
print(tuple4)  # (1, 2, 'hello', 3.14, True)
print(tuple4[2])  # hello

# 2.3 定义只有一个数据的元组, 数据后必须有一个逗号
# (1) 不加逗号,为整型
tuple5 = (10)
print(tuple5)  # (10)
print(type(tuple5))  # <class 'int'>
# (2)加逗号,为元组类型
tuple6 = (10,)
print(tuple6)  # (10,)
print(type(tuple6))  # <class 'tuple'>
tuple7 = (1, 2, 3)
print(tuple7[2])  # 3

注意 元组中只包含一个元素时,需要在元素后面添加逗号 Eg:data = (1,)

3.元组查询方法:索引和count

(1)索引

  • 格式:item = 元组[索引]
  • 注意:使用不存在的索引, 代码执行会报错!
tuple7 = (1, 2, 3)
print(tuple7[2])  # 3

(2)count()

说明:统计 指定数据在列表中出现的次数

格式:元组.count(目标数据)

结果:

  1. 如果目标数据不存返回出现次数
  2. 如果目标数据不存在,返回 0
tuple8 = (1, 3, 3, "abc", 2)
print(tuple8.count(3))  # 2
print(tuple8.count(5))  # 0

4.元组的特殊用法:交换两个变量的值【面试题】

1.在 Python 中可以使用对应数据个数的变量, 获取对应元组数据中的每一个元素

2.在定义元组的时候, 小括号可以省略不写

3.借助以上两个特性, 可以通过元组快速实现交换两个变量的值:

  • 组包(pack):将多个数据值组成元组的过程 a = 1, 2 # a = (1, 2)。
  • 拆包(解包 unpack):将容器中多个数据 分别给到多个变量, 需要保证容器中元素的个数                                    和变量 的个数保持一致。
a = 10
b = 20

# 组包
c = b, a
print(c)     # (20, 10)

# 拆包
a, b = c
print(a, b)  # 20 10
# 交换两个变量的值
x, y = y, x
print(x, y)     # 20 10

# 拆包后取出某个变量
e, f, g = "abc"
print(f)        # b

未完待续。。。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1887557.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ArcTs布局入门03——层叠布局(Stack)

如果你也对鸿蒙开发感兴趣&#xff0c;加入“Harmony自习室”吧&#xff01; 扫描下面的二维码关注公众号。 1、概述 叠布局&#xff08;StackLayout&#xff09;用于在屏幕上预留一块区域来显示组件中的元素&#xff0c;提供元素可以重叠的布局。层叠布局通过Stack容器组件实…

【鸿蒙学习笔记】基础组件 Button

官方文档&#xff1a;按钮 (Button)添加链接描述 官方文档&#xff1a;button开发指导 目录标题 属性迭代完善不含子组件的按钮包含子组件的按钮ButtonType添加事件跳转超链接提交表单悬浮按钮 属性迭代完善 不含子组件的按钮 Column({ space: 10 }) {Row() {Button(添加子目…

全国总工会党组书记徐留平来苏调研 观摩体验苏州金龙无人驾驶巴士

6月28日&#xff0c;全国总工会党组书记、副主席、书记处第一书记徐留平率队来苏州调研工会工作&#xff0c;并在苏州市劳模工匠人才创新成果展上观摩体验苏州金龙无人驾驶巴士。 本届苏州市劳模工匠人才创新成果展共设20个展位&#xff0c;集中展示了全市“劳模工匠助企行”的…

java面试-SpringAOP

1.SpringAOP的使用 你了解Spring AOP 吗&#xff1f; 通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。 2.SpringAOP的原理 我们可以将ASM生成的类进行缓存&#xff0c;这样能解决生成的类比较低效的问题。 ASM是可以操作字节码的框架。 真实实现类和…

数据库操作语言(DML)

数据库操作语言&#xff08;DML&#xff09; 文章目录 数据库操作语言&#xff08;DML&#xff09;一、四种操作二、数据的插入&#xff08;增&#xff09;三、数据的删除&#xff08;删&#xff09;四、数据的修改&#xff08;改&#xff09;五、数据的查询&#xff08;查&…

RK3568驱动指南|第十五篇 I2C-第179章在应用程序中使用I2C

瑞芯微RK3568芯片是一款定位中高端的通用型SOC&#xff0c;采用22nm制程工艺&#xff0c;搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码&#xff0c;支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU&#xff0c;可用于轻量级人工…

WPDRRC信息安全体系架构模型

构建信息安全保障体系框架应包括技术体系、组织机构体系和管理体系等三部分&#xff0c;也就是说&#xff1a;人、管理和技术手段是信息安全架构设计的三大要素&#xff0c;而构成动态的信息与网络安全保障体系框架是实现系统的安全保障。 1.WPDRRC信息安全模型的定义 WPDRRC…

Oracle - 数据库打补丁实践

原文&#xff1a;https://www.cnblogs.com/ddzj01/p/12097467.html 一、概述 本文将介绍如何给oracle数据库打最新补丁&#xff0c;数据库版本为11.2.0.4单实例&#xff0c;操作系统为redhat6.5 二、下载相关升级包 1. 登录MOS&#xff0c;查阅(ID 2118136.2)&#xff0c;下载…

电脑录音方法:电脑怎么录音?5招轻松搞定录音!

想要从麦克风或系统音频录制电脑声音吗&#xff1f;这是一项简单的任务。本文将为您介绍5种最佳且最简单的方法&#xff0c;包括使用Windows系统自带的录音工具来录制电脑音频&#xff0c;在线音频录音软件和专业的第三方电脑录音软件。这些工具都能够很好地帮助您完成电脑怎么…

MySQL数据库中文乱码处理

出现中文乱码之后处理方式 1、执行下面语句查看一下关于编码方式 show variables like %char%结果展示&#xff1a;【你应该和我的不一样】 2、如果你的和我查询结果不一致请设置成一致语句&#xff0c;根据自己需要复制语句 如下&#xff1a;【除了最后一条记录哈】 SET G…

llm-universe | 五. 系统评估与优化

系统评估与优化 一.LLM应用评估思路1.人工评估准则一 量化评估准则二 多维评估 2.自动评估方法一. 构造客观题方法二. 计算答案相似度 3.使用大模型评估4.混合评估 二.评估并优化生成部分1. 提升直观回答质量2.标明知识来源&#xff0c;提高可信度3. 构造思维链4.增加一个指令解…

独立开发者系列(10)——fastadmin后台框架的认识

软件开发项目涉及到的东西非常多&#xff0c;作为独立开发者&#xff0c;普遍性的面对的是中小项目。而其中接单的情况下&#xff0c;以WEB方向的居多。其中主要有以下这么些类的:搭建官网cms 就是常见的资讯发布平台&#xff0c;发布一些企业新闻/活动宣传&#xff0c;纯粹是…

Docker部署ETCD 3.5.14(保姆级图文教程)

系列文章目录 Docker部署Nginx 1.21.5&#xff08;保姆级图文教程&#xff09; Docker部署MySQL 8.3.0&#xff08;保姆级图文教程&#xff09; Docker部署ETCD 3.5.14&#xff08;保姆级图文教程&#xff09; 文章目录 一、环境二、拉取镜像2.1 查找 Docker Hub 上的 ETCD 镜像…

【区块链+基础设施】国家健康医疗大数据科创平台 | FISCO BCOS应用案例

在医疗领域&#xff0c;疾病数据合法合规共享是亟待解决的难题。一方面&#xff0c;当一家医院对患者实施治疗后&#xff0c;若患者转到其 他医院就医&#xff0c;该医院就无法判断诊疗手段是否有效。另一方面&#xff0c;医疗数据属于个人敏感数据&#xff0c;一旦被泄露或被恶…

网络配线架的隐藏功能

网络布线是确保现代信息社会高效运转的关键技术之一。在这一领域&#xff0c;网络配线架扮演着至关重要 的角色。它不仅仅是一个简单的物理连接点&#xff0c;更拥有许多隐藏功能&#xff0c;这些功能极大地提升了网络的 效率、稳定性和可管理性。 1、集中管理 网络配线架提…

springboot图书馆座位预约系统-计算机毕业设计源码85670

目 录 摘要 1 绪论 1.1 选题背景与意义 1.2开发现状 1.3论文结构与章节安排 2 开发环境及相关技术介绍 2.1 MySQL数据库 2.2 Tomcat服务器 2.3 Java语言 2.4 SpringBoot框架介绍 3 图书馆座位预约系统系统分析 3.1 可行性分析 3.1.1 技术可行性分析 3.1.2 经济可…

MySQL 代理层:ProxySQL

文章目录 说明安装部署1.1 yum 安装1.2 启停管理1.3 查询版本1.4 Admin 管理接口 入门体验功能介绍3.1 多层次配置系统 读写分离将实例接入到代理服务定义主机组之间的复制关系配置路由规则事务读的配置延迟阈值和请求转发 ProxySQL 核心表mysql_usersmysql_serversmysql_repli…

达梦数据库修改日期时间格式和语言

1、问题 重装了达梦数据库后&#xff0c;通过达梦管理工具查询&#xff0c;表字段timestamp类型变成了中文 对于2023-11-01 01:55:33格式时间插入报错&#xff0c;非法的时间日期类型数据 2、查询配置 通过DM8系统管理员手册查到相关配置 通过命令进行查询显示&#xff0c;语…

《工业微生物》是什么级别的期刊?是正规期刊吗?能评职称吗?

​问题解答 问&#xff1a;《工业微生物》是不是核心期刊&#xff1f; 答&#xff1a;不是&#xff0c;是知网收录的第一批认定学术期刊。 问&#xff1a;《工业微生物》级别&#xff1f; 答&#xff1a;国家级。主管单位&#xff1a;中国轻工业联合会 主办单位&#xff…

多个tomcat同时使用 不设置CATALINA_HOME环境变量

通常一台服务器只使用一个tomcat&#xff0c;设置一个CATALINA_HOME的环境变量。但有些时候需要一台服务器启动多个tomcat&#xff0c;那就不能设置CATALINA_HOME了&#xff01;因为会串~ 我们可以在对应tomcat的startup.bat启动脚本中&#xff0c;加入对应的CATALINA_HOME。 …