Skip to content

元组

一句话解释

元组(tuple)是 Python 中有序但**不可变**的容器,用 `()` 定义,创建后不能修改。

用大白话说

元组(tuple)和列表很像,都是有序容器,区别在于元组创建后就不能改了——不能增、删、改元素。

point = (3, 4)           # 一个表示坐标的元组
rgb = (255, 128, 0)      # 一个表示颜色的元组
# point[0] = 5  # ❌ 报错:元组不可变

为什么要用元组而不是列表?

  • 数据不该改时用元组更安全,防止意外修改
  • 元组略快、内存更省
  • 作为字典的键:列表不能当键(可变),元组可以(不可变)
  • 函数返回多个值return x, y 实际返回的是元组

元组经常用于“几个固定值打包”的场景:坐标 (x, y)、RGB 颜色 (r, g, b)、数据库一行记录等。只有一个元素的元组要写成 (5,)(加逗号),否则会被当成普通括号里的表达式。

示例

python
point = (3, 4)
print(point[0])     # 3
x, y = point        # 解包:x=3, y=4
# point[0] = 5      # ❌ 报错:元组不可变
single = (5,)       # 单元素元组要加逗号

() 创建元组,可以解包赋值。元组不可变,试图修改会报错。单元素元组要写 (5,) 加逗号。

工作原理

  1. () 创建元组,元素用逗号分隔
  2. tuple[下标] 读取(但不能修改)
  3. 可以解包:a, b = (1, 2) 把元素分别赋给变量
  4. 创建后不能增删改元素,是不可变对象

常见混淆

  • 容易混淆的对象: 列表

    关键区别: 元组不可变(创建后不能改),列表可变(能增删改)。数据固定不变用元组,需要修改用列表。

相关术语

相关资源

相关课程

学习基础知识

通过结构化课程深入理解这个主题。

查看课程

解读错误信息

用大白话解释常见错误——什么意思、为什么发生、如何修复。

查看错误

← 返回术语表