Python元组详解
元组特性
元组是一种有序且不可变的数据结构,与列表的主要区别在于创建后无法修改其内容。
定义元组时使用圆括号 (),而列表则使用方括号 []。
当元组仅包含一个元素时,必须在该元素后添加逗号,以避免被解释为普通表达式。
单元素元组示例
single_value = (100)
print(type(single_value)) # 输出: <class 'int'>
single_tuple = (100,)
print(type(single_tuple)) # 输出: <class 'tuple'>
元组支持正向和反向索引访问:
| 'red' | 'green' | 'blue' | 'yellow' | 'white' | 'black' | |
|---|---|---|---|---|---|---|
| 正向索引 | 0 | 1 | 2 | 3 | 4 | 5 |
| 反向索引 | -6 | -5 | -4 | -3 | -2 | -1 |
索引访问示例
colors = ('red', 'green', 'blue', 'yellow', 'white', 'black')
print(colors[2]) # 输出 blue
print(colors[-2]) # 输出 white
print(colors[2:]) # 输出 ('blue', 'yellow', 'white', 'black')
print(colors[1:4]) # 输出 ('green', 'blue', 'yellow')
操作限制
由于元组是不可变对象,因此不支持对内部元素的修改或删除操作。
不过可以通过拼接方式生成新的元组:
元组拼接示例
data_a = (10, 20.5)
data_b = ('hello', 'world')
combined = data_a + data_b
print(combined) # 输出 (10, 20.5, 'hello', 'world')
虽然不能删除元组内的个别项,但可以使用 del 关键字移除整个元组变量:
删除元组示例
sample = ('apple', 'banana', 2020, 2023)
del sample
# 此时 sample 变量已不存在
常用运算与方法
元组支持多种基本运算操作:
| 操作 | 示例 | 说明 |
|---|---|---|
| 长度计算 | len((1, 2, 3)) |
返回元素数量 |
| 元组连接 | (1, 2) + (3,) |
合并两个元组 |
| 重复扩展 | ('a',) * 3 |
复制指定次数 |
| 成员检查 | 2 in (1, 2, 3) |
判断元素是否存在于元组中 |
| 遍历循环 | for i in (1,2,3): print(i) |
逐个处理每个元素 |
此外还提供了一些内置函数用于处理元组:
| 函数 | 示例输入 | 结果 | 用途 |
|---|---|---|---|
len() |
('x', 'y', 'z') |
3 | 统计元素总数 |
max() |
(3, 1, 4) |
4 | 找出最大值 |
min() |
(3, 1, 4) |
1 | 找出最小值 |
tuple() |
['a', 'b', 'c'] |
('a', 'b', 'c') |
将其他序列转为元组 |