列表是Python中最基础且强大的数据结构之一。本章将深入探讨如何高效地操作列表,包括遍历、数值列表生成、切片技巧、元组的使用,以及代码格式规范。
4.1 遍历整个列表
遍历列表是处理数据的基本操作。通过`for`循环,可以依次访问列表中的每个元素:
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
4.1.1 深入研究循环
循环的每一次迭代都会将列表中的元素赋值给临时变量(如`fruit`),并在代码块中执行操作。
4.1.2 在循环中执行更多操作
在循环内部,可以执行复杂逻辑,例如修改数据或调用函数:
for fruit in fruits:
print(fruit.upper()) # 输出大写形式
4.1.3 循环结束后执行操作
循环结束后,可以通过非缩进代码执行后续任务:
print("所有水果已遍历完毕!")
4.2 避免缩进错误
Python依赖缩进定义代码块,常见错误包括:
- 忘记缩进:导致IndentationError。
- 不必要的缩进:在无需缩进的代码行添加空格。
- 遗漏冒号:在`for`或`if`语句后忘记写冒号(:)。
4.3 创建数值列表
4.3.1 使用range()函数
range(start, end, step)生成数字序列:
numbers = list(range(1, 6)) # 输出 [1, 2, 3, 4, 5]
4.3.2 数值列表的统计计算
对数值列表使用内置函数:
max_num = max(numbers) # 最大值
min_num = min(numbers) # 最小值
sum_num = sum(numbers) # 总和
4.3.3 列表推导式
快速生成列表的简洁语法:
squares = [x**2 for x in range(1, 6)] # 输出 [1, 4, 9, 16, 25]
4.4 使用列表的一部分
4.4.1 切片
通过索引截取子列表:
numbers = [0, 1, 2, 3, 4]
sub_list = numbers[1:4] # 输出 [1, 2, 3]
4.4.2 遍历切片
对切片后的列表进行循环:
for num in numbers[:3]: # 遍历前3个元素
print(num)
4.4.3 复制列表
使用切片或`copy()`方法创建独立副本:
new_numbers = numbers[:] # 深拷贝
4.5 元组
元组是不可变序列,适用于存储不应修改的数据。
4.5.1 定义元组
使用圆括号定义:
dimensions = (1920, 1080)
4.5.2 遍历元组
遍历方式与列表相同:
for dim in dimensions:
print(dim)
4.5.3 修改元组变量
虽然元组不可变,但可以重新赋值:
4.6 设置代码格式
遵循PEP 8规范提升代码可读性:
- 缩进:每级缩进4个空格。
- 行长:每行不超过79字符。
- 空行:用空行分隔函数或逻辑块。
- 运算符对齐:在复杂表达式中对齐运算符。
4.7 小结
本章涵盖了列表的核心操作,包括遍历、数值列表生成、切片、元组使用及代码格式化。掌握这些技能,可以更高效地处理数据并编写清晰的Python代码。