【Python入门】Python中的元组tuple

1. 元组的介绍

元组:元组是不可变的序列,类似于列表,但创建后不能修改。

特点:

  • 可以存储不同类型的元素
  • 元素可以重复、有序、不可以修改(支持索引访问、切片)

定义:

python 复制代码
# 定义元组
元组名称 = (元素1,元素2,元素3,...)
# 示例
t1 = (3,2,4,6,5,98,80)

# 定义空元组
元组名称 = ()
元组名称 = tuple()
#示例
t2 = ()
t3 = tuple()

方法:

  • count():统计某元素在元组中出现的次数
  • index():查找某个元素在元组中的索引位置(第一次出现的位置)

代码示例即运行结果:

python 复制代码
# 定义元组
t1 = (3, 2, 4, 6, 5, 98, 6, 80)

print(t1)
print(type(t1))

# 索引访问
print(t1[0])
print(t1[-1])

# 切片
print(t1[0:4:1])

# count() 统计某个元素的个数
print(t1.count(6))

# index() 获取元素的索引,即元素出现的位置
print(t1.index(6))

# 定义空元组
t2 = ()

# 定义单个元素元组,需要在结尾加上逗号
t3 = (111,)

2. 组包与解包

组包:将多个值合并到一个容器(元组、列表)中。

解包:将容器(元组、列表)解开成独立的元素,分别赋值给多个变量。

代码示例及运行结果:

python 复制代码
# 定义元组,组包
t1 = (54, 24, 87, 56)

# 定义元组,组包
t2 = 54, 24, 87, 56

# 基础解包
q, w, e, r = t1
print(q, w, e, r)

# (*)扩展解包
a, *b, c = t2  # a为54,b为[24,87],c为56
print("打印输出a:", a)
print("打印输出b:", b)
print("打印输出c:", c)
p, *o = t2  # p为54,o为[24,87,56]
print("打印输出p:", p)
print("打印输出o:", o)
*h, d = t2  # h为[54,24,87],d为56
print("打印输出h:", h)
print("打印输出d:", d)

# 利用组包与解包实现两个数之间的值的交换
x = 30
y = 20

"""
省略的中间步骤:
t = y,x
x,y = t
"""
x, y = y, x
print("交换后x的值:", x)
print("交换后y的值:", y)

在元组解包时,*表示收集剩余的所有元素,允许我们处理不确定数量的元素(生成列表,以便于可以进行下一步的处理)

相关推荐
傲笑风3 小时前
【openvino】tinybert基于openvino服务化部署(四)
人工智能·python·自然语言处理·nlp·bert·openvino
维基框架3 小时前
WIKI 知识库 v1.1.1 正式发布
人工智能·python
谢白羽7 小时前
SGLang的AWQ量化笔记
笔记·python·sglang
迷迭香yy8 小时前
基金档案数据工程实战从收入分析到持仓穿透的Python解析 IG50免费开源股票数据API接口
开发语言·python
清水白石0088 小时前
Python 类型设计深度解析:TypedDict 能否替代 dataclass?从 JSON 数据边界到 API 设计的最佳实践
java·python·json
️学习的小王8 小时前
Git项目提交忽略文件怎么做?以Python项目为例,详解.gitignore
git·python·elasticsearch
前端 贾公子8 小时前
第09章:上下文与记忆 (6)
开发语言·前端·python
evans在进步9 小时前
Java 常用设计模式入门:建造者、工厂、单例、外观与代理
java·python·设计模式
jayson.h9 小时前
PDF 合并+添加页码 相关库、类、函数
开发语言·前端·python
典典分享指南9 小时前
用飞书多维表格搭建内容管理看板
java·python·r语言·composer·symfony