Python数据类型 - 元组(Tuple)

Python数据类型 - 元组(Tuple)_第1张图片

Python数据类型 - 元组(Tuple)

1. 元组简介

元组是Python中的不可变序列,用于存储一组有序的元素。特点:

  • 用圆括号()定义,元素间用逗号分隔
  • 一旦创建,内容不可修改(但可以整体重新赋值)
  • 支持索引和切片操作
  • 可以包含任意数据类型

2. 创建元组

# 空元组
empty_tuple = ()

# 单元素元组(注意末尾的逗号)
single_tuple = (42,)  

# 多元素元组
colors = ('red', 'green', 'blue')
mixed = (1, 'hello', 3.14, True)

# 省略括号(自动转换为元组)
numbers = 1, 2, 3

3. 基本操作

访问元素

t = ('a', 'b', 'c', 'd')

print(t[0])    # 'a'(正向索引,从0开始)
print(t[-1])   # 'd'(负向索引,-1表示最后一个)

切片操作

print(t[1:3])   # ('b', 'c')
print(t[:2])    # ('a', 'b')
print(t[::2])   # ('a', 'c')(步长为2)

元组解包

point = (10, 20)
x, y = point    # x=10, y=20

# 交换变量
a, b = b, a

4. 不可变性

元组创建后不能修改内容,尝试修改会报错:

t = (1, 2, 3)
t[0] = 5  # 报错:TypeError

但若元素本身是可变对象(如列表),其内容可以改变:

t = ([1, 2], [3, 4])
t[0].append(3)  # 允许,元组变为([1, 2, 3], [3, 4])

5. 常用方法

由于不可变,元组方法较少:

方法 描述
count(x) 返回元素x出现的次数
index(x) 返回元素x第一次出现的索引
t = (1, 2, 2, 3)
print(t.count(2))  # 2
print(t.index(3))  # 3

6. 元组 vs 列表

特性 元组 列表
可变性 不可变 可变
语法 () []
性能 更快 稍慢
用途 固定数据 动态数据
方法

7. 应用场景

  • 存储不应被修改的数据
  • 字典的键(因为不可变)
  • 函数返回多个值时(本质是返回元组)
  • 提高程序性能(比列表更高效)

8. 高级技巧

命名元组

from collections import namedtuple
Point = namedtuple('Point', ['x', 'y'])
p = Point(11, y=22)
print(p.x, p.y)  # 11 22

元组拼接

t1 = (1, 2)
t2 = (3, 4)
combined = t1 + t2  # (1, 2, 3, 4)

乘法运算

triple = t1 * 3  # (1, 2, 1, 2, 1, 2)

你可能感兴趣的:(python基础,python,开发语言)