Python中for循环用于遍历可迭代对象,核心是简洁地处理每个元素。基本语法为for 变量 in 可迭代对象:,如遍历列表、字符串或使用range()生成数字序列。配合break和continue可控制循环流程,else块在循环正常结束时执行。相比while循环(依赖条件判断),for更适用于已知序列的遍历。通过enumerate()可同时获取索引和值,zip()则能并行遍历多个序列,提升代码可读性与效率。

Python中使用
for
说起
for
for 变量 in 可迭代对象:
比如,我们有个水果列表:
fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:
print(f"我喜欢吃{fruit}。")这段代码会依次把
fruits
fruit
for (int i = 0; i < n; i++)
立即学习“Python免费学习笔记(深入)”;
除了列表,字符串也是可迭代的:
my_string = "Python"
for char in my_string:
print(f"字符是:{char}")它会把字符串里的每个字符都拿出来。
还有一种很常用的场景,就是当你需要一个数字序列时,
range()
# 从0到4(不包含5)
for i in range(5):
print(i)
# 从1到5(不包含6)
for i in range(1, 6):
print(i)
# 从0到10,步长为2
for i in range(0, 11, 2):
print(i)range()
有时候,循环过程中你可能需要提前结束循环,或者跳过当前迭代。
break
continue
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in numbers:
if num % 2 != 0: # 如果是奇数,跳过
continue
if num > 7: # 如果大于7,停止循环
break
print(f"偶数:{num}")这里,
continue
break
for
另外,
for
else
else
break
for i in range(3):
print(f"当前数字:{i}")
else:
print("循环正常结束了。")
for i in range(3):
print(f"当前数字:{i}")
if i == 1:
break
else:
print("这个不会被打印,因为循环被break了。")这个
else
要说
for
while
for
for
举个例子,你想打印一个列表里的所有元素,用
for
items = ['pencil', 'book', 'eraser']
for item in items:
print(item)多简洁!你不需要写
i = 0
i < len(items)
i += 1
而
while
while
比如,你想让用户输入一个正整数,直到输入正确为止:
valid_input = False
while not valid_input:
try:
num = int(input("请输入一个正整数: "))
if num > 0:
print(f"你输入的是:{num}")
valid_input = True
else:
print("输入必须是正整数,请重试。")
except ValueError:
print("无效输入,请确保输入的是整数。")这种情况下,
for
当然,理论上你总能用
while
for
fruits = ['apple', 'banana', 'cherry']
index = 0
while index < len(fruits):
print(fruits[index])
index += 1但你看,这明显比直接用
for
index += 1
for
while
很多时候,我们不仅想拿到循环中的每个元素,还想知道它在原始序列中的位置(也就是索引)。Python为这种需求提供了非常方便的内置函数
enumerate()
enumerate()
for
看个例子就明白了:
my_list = ['A', 'B', 'C', 'D']
for index, value in enumerate(my_list):
print(f"索引 {index}: 值为 {value}")输出会是:
索引 0: 值为 A 索引 1: 值为 B 索引 2: 值为 C 索引 3: 值为 D
是不是比自己手动维护一个
index
my_list[index]
enumerate()
start
for index, value in enumerate(my_list, start=1):
print(f"第 {index} 个元素是: {value}")这样,索引就会从1开始计数。
除了
enumerate()
zip()
names = ['Alice', 'Bob', 'Charlie']
ages = [25, 30, 22]
cities = ['New York', 'London', 'Paris']
for name, age, city in zip(names, ages, cities):
print(f"{name} (年龄: {age}) 住在 {city}。")这在处理相关联的数据时非常高效和直观。如果序列长度不一致,
zip()
itertools.zip_longest
我个人觉得,
enumerate()
zip()
for
以上就是Python怎么使用for循环_Python for循环使用方法详解的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号