for 循环用于迭代序列(即列表,元组,字典,集合或字符串)。
这与其他编程语言中的 for 关键字不太相似,而是更像其他面向对象编程语言中的迭代器方法。
通过使用 for 循环,我们可以为列表、元组、集合中的每个项目等执行一组语句。
打印 fruits 列表中的每种水果:
fruits = ["apple", "banana", "cherry"]for x in fruits: print(x)
提示:for 循环不需要预先设置索引变量。
通过使用 break 语句,我们可以在循环遍历所有项目之前停止循环:
如果 x 是 "banana",则退出循环:
fruits = ["apple", "banana", "cherry"]for x in fruits: print(x) if x == "banana": break
当 x 为 "banana" 时退出循环,但这次在打印之前中断:
fruits = ["apple", "banana", "cherry"]for x in fruits: if x == "banana": break print(x)
通过使用 continue 语句,我们可以停止循环的当前迭代,并继续下一个:
不打印香蕉:
fruits = ["apple", "banana", "cherry"]for x in fruits: if x == "banana": continue print(x)
如需循环一组代码指定的次数,我们可以使用 range() 函数,
range() 函数返回一个数字序列,默认情况下从 0 开始,并递增 1(默认地),并以指定的数字结束。
使用 range() 函数:
for x in range(10): print(x)
注意:range(10) 不是 0 到 10 的值,而是值 0 到 9。
range() 函数默认 0 为起始值,不过可以通过添加参数来指定起始值:range(3, 10),这意味着值为 3 到 10(但不包括 10):
使用起始参数:
for x in range(3, 10): print(x)
range() 函数默认将序列递增 1,但是可以通过添加第三个参数来指定增量值:range(2, 30, 3):
使用 3 递增序列(默认值为 1):
for x in range(3, 50, 6): print(x)
for 循环中的 else 关键字指定循环结束时要执行的代码块:
打印 0 到 9 的所有数字,并在循环结束时打印一条消息:
for x in range(10): print(x)else: print("Finally finished!")
嵌套循环是循环内的循环。
“外循环”每迭代一次,“内循环”将执行一次:
打印每个水果的每个形容词:
adj = ["red", "big", "tasty"]fruits = ["apple", "banana", "cherry"]for x in adj: for y in fruits: print(x, y)