python中元组的操作
1. 元组创建
- 小括号创建:tup = (1, 2, 3) 或 tup = 1, 2, 3(逗号是关键)
- 单元素元组需加逗号:singleton = (42,)(否则会被识别为普通括号)
- 构造函数:tuple([1,2,3]) → (1,2,3)
2. 基本操作
- 索引/切片:与列表相同,如tup[1]或tup[1:3]
- 拼接:+运算符((1,2) + (3,) → (1,2,3))
- 重复:*运算符((‘Hi’,)*2 → (‘Hi’,‘Hi’))
- 长度:len(tup)
- 不可变性:尝试修改会触发TypeError
3. 常用方法
- 查找:index(x)返回元素首次出现位置
- 计数:count(x)统计元素出现次数
- 存在判断:x in tup
4. 特殊用法
- 解包赋值:x, y, z = (1, 2, 3)
- 星号解包:a, *b = (1,2,3,4)(a=1, b=[2,3,4])
- 函数多返回值:return width, height
- 字典键:可作为不可变键使用(列表不行)
5. 性能优势
- 比列表占用内存更少
- 创建速度更快(适合存储常量数据)
- 线程安全(因不可变性)
6. 转换操作
- 列表转元组:tuple([1,2,3]) → (1,2,3)
- 元组转列表:list((1,2,3)) → [1,2,3]
示例:
# 坐标解包
point = (3, 5)
x, y = point # x=3, y=5# 函数返回多个值
def get_size():return 800, 600
width, height = get_size()
元组适合存储不应被修改的数据集合,如配置参数、数据库记录等。若需要频繁修改数据,应使用列表。