第25集:元组基础操作
本集学习目标
- 理解元组的概念和特点
- 掌握元组的创建方法
- 学会元组的索引和切片
- 理解元组的不可变性
- 掌握元组与列表的区别
- 通过实际练习掌握元组的使用
什么是元组?
元组(Tuple)是Python中用于存储多个元素的有序集合,与列表类似,但元组是不可变的。
元组的特点
- 使用圆括号
()创建 - 元素之间用逗号
,分隔 - 元组是不可变的(不能修改)
- 元组是有序的(有索引)
- 可以存储任意类型的元素
- 元素可以重复
- 比列表更节省内存
创建元组
基本创建方式
# 空元组
tuple1 = ()
# 创建元组
tuple2 = (1, 2, 3, 4, 5)
tuple3 = ("apple", "banana", "orange")
tuple4 = (1, "hello", 3.14, True) # 混合类型单元素元组
创建单元素元组时,必须在元素后面加逗号。
# 错误:这不是元组,是括号中的数字
not_a_tuple = (1)
print(type(not_a_tuple)) # <class 'int'>
# 正确:加上逗号
a_tuple = (1,)
print(type(a_tuple)) # <class 'tuple'>使用tuple()函数
# 从列表创建元组
tuple1 = tuple([1, 2, 3])
print(tuple1) # (1, 2, 3)
# 从字符串创建元组
tuple2 = tuple("Python")
print(tuple2) # ('P', 'y', 't', 'h', 'o', 'n')元组的索引和切片
索引访问
fruits = ("apple", "banana", "orange", "grape")
print(fruits[0]) # apple
print(fruits[1]) # banana
print(fruits[-1]) # grape切片操作
fruits = ("apple", "banana", "orange", "grape", "mango")
print(fruits[1:4]) # ('banana', 'orange', 'grape')
print(fruits[:3]) # ('apple', 'banana', 'orange')
print(fruits[::-1]) # 反转元组元组的方法
count() - 统计出现次数
numbers = (1, 2, 3, 2, 4, 2)
print(numbers.count(2)) # 3index() - 查找索引
numbers = (1, 2, 3, 2, 4)
print(numbers.index(2)) # 1len() - 元组长度
numbers = (1, 2, 3, 4, 5)
print(len(numbers)) # 5元组与列表的区别
| 特点 | 元组 | 列表 |
|---|---|---|
| 创建符号 | () |
[] |
| 可变性 | 不可变 | 可变 |
| 性能 | 更快 | 较慢 |
| 内存 | 更节省 | 较多 |
| 用途 | 存储不变的数据 | 存储可变的数据 |
示例对比
# 元组(不可变)
tuple1 = (1, 2, 3)
# tuple1[0] = 100 # 错误:元组不可变
# 列表(可变)
list1 = [1, 2, 3]
list1[0] = 100 # 正确:列表可变实际应用案例
案例1:坐标点
# 使用元组表示坐标(不可变)
point = (10, 20)
x, y = point # 元组解包
print(f"x坐标:{x},y坐标:{y}")案例2:颜色值
# RGB颜色(红,绿,蓝)
red = (255, 0, 0)
green = (0, 255, 0)
blue = (0, 0, 255)案例3:日期
# 日期(年,月,日)
date = (2024, 1, 15)
year, month, day = date
print(f"{year}年{month}月{day}日")本集小结
- 元组是不可变的有序集合
- 使用圆括号
()创建 - 元组是不可变的
- 支持索引、切片操作
count():统计出现次数index():查找索引- 元组比列表更节省内存
- 适合存储不变的数据
课后练习
练习1:创建和访问元组
创建元组包含5个数字,输出第2和第4个元素。
练习2:元组切片
给定元组(1,2,3,4,5,6),输出前3个和后3个元素。
练习3:元组解包
将元组(10,20,30)解包到三个变量。
练习4:统计元素
统计元组(1,2,3,2,4,2)中2出现的次数。
练习5:坐标点
创建坐标点元组,计算两点距离。
下集预告
下一集我们将学习第26集:字典基础操作。字典是Python中最重要的数据结构之一,使用键值对存储数据。
敬请期待!