《Python入门到精通》元组 Tuple 详解,元组常用函数

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:小白零基础《Python入门到精通》

「元组」使用小括号()包裹,「元素」之间使用逗号,间隔。元组与列表相似,但元组的元素「不可变」。

元组 Tuple

1、常用的基本操作

「创建」元组

python 复制代码
# 创建空元组
tuple1 = ()
# 只有一个元素时,后面要加逗号
tuple2 = (1, )
# 多个元素,用逗号间隔
tuple3 = (1, 2, 3)

「访问」元组,可以使用索引访问,索引从 0 开始

python 复制代码
tuple1 = (1, 2, 3, 4, 5)
print(tuple1)
print(tuple1[1])
print(tuple1[1: 3])

「删除」元组,元组的元素不可变,所以不能删除元组的元素,只能删除整个元组

python 复制代码
tuple1 = (1, 2, 3, 4, 5)
del tuple1

2、元组的操作符

虽然元组不可变,但可以配合一些「运算符」,改成新的元组。

操作符 描述
tuple() + tuple() 拼接元组
tuple() * n 重复元组
k in tuple() 元组中是否包含某个值
for k in tuple() : print( k ) 迭代遍历

加号 + 可以将两个元组「拼接」成一个新的元组

python 复制代码
tuple1 = (1, 2, 3)
tuple2 = (4, 5, 6)

new_tuple = tuple1 + tuple2
print(new_tuple)

输出:

bash 复制代码
(1, 2, 3, 4, 5, 6)

乘号 * 可以将元组的内容「复制」多次,并生成一个新的元组

python 复制代码
tuple1 = (1, 2, 3)
new_tuple = tuple1 * 3
print(new_tuple)

输出:

bash 复制代码
(1, 2, 3, 1, 2, 3, 1, 2, 3)

关键字 in 可以判断指定值是否在元组中存在,存在返回True,不存在返回False

python 复制代码
tuple1 = (1, 2, 3)
print(1 in tuple1)
print(10 in tuple1)

输出:

bash 复制代码
True
False

使用「迭代」的方式,快速「遍历」列表中的元素

python 复制代码
tuple1 = (1, 2, 3)
for k in tuple1:
    print(k)

输出:

bash 复制代码
1
2
3

3、元组常用的内置函数

函数 描述
len() 返回元组长度
max() 返回最大的元素
min() 返回最小的元素
tuple() 将可迭代序列转成元组

len() 可以返回元组的「长度」,实际上是返回元组中元素的个数

python 复制代码
tuple1 = (1, 2, 3)
print(len(tuple1))

输出:

bash 复制代码
3

max() 可以返回元组中「最大」的一个元素,可以同时传入多个参数,但参数的元素的类型必须全部相同。

python 复制代码
tuple1 = (1, 2, 3)
tuple2 = (4, 5, 6)

# 一个参数返回最大的元素
print(max(tuple1))
# 多个参数返回最大的参数
print(max(tuple1, tuple2))

输出:

bash 复制代码
3
(4, 5, 6)

min() 可以返回元组中「最小」的元素,用法和 max() 一样。

tuple() 可以将可迭代序列「转成」元组类型

python 复制代码
print(tuple('abc'))
print(tuple([1, 2, 3]))
print(tuple({'key1': 1, 'key2': 2}))

输出:

bash 复制代码
('a', 'b', 'c')
(1, 2, 3)
('key1', 'key2')
相关推荐
比尔盖茨的大脑1 小时前
AI Agent 架构设计:从 ReAct 到 Multi-Agent 系统
前端·人工智能·全栈
后端小肥肠2 小时前
OpenClaw 实战|多 Agent 打通小红书:数据收集 + 笔记编写 + 自动发布一步到位
人工智能·aigc·agent
银河系搭车客指南2 小时前
OpenClaw 多 Agent 实战指南:Multi-Agent Routing 与 Sub-Agents 的正确打开方式
人工智能
手机不死我是天子2 小时前
拆解大模型二:Transformer 最核心的设计,其实你高中就学过
人工智能·llm
gustt2 小时前
MCP协议进阶:构建多工具Agent实现智能查询与浏览器交互
人工智能·agent·mcp
Halo咯咯2 小时前
Claude Code 的工程哲学:缓存与工具设计的真实教训 | 经验分享
人工智能
风象南3 小时前
最适合新手先装的 20 个 OpenClaw Skills 来了!
人工智能
明月_清风3 小时前
Python 内存手术刀:sys.getrefcount 与引用计数的生死时速
后端·python
明月_清风3 小时前
Python 消失的内存:为什么 list=[] 是新手最容易踩的“毒苹果”?
后端·python
小兵张健14 小时前
35岁程序员的春天来了
人工智能