摘要:在本节中,你将学习 Python 中的 for
循环,以及如何使用它来执行固定次数的代码块。
使用range()函数的for循环语句简介
在编程中,你经常需要多次执行一段代码。为此,你可以使用 for
循环。
以下展示了 for
循环的语法:
for index in range(n):
statement
在这个语法中index
被称为循环计数器n
是循环将执行语句的次数。
循环计数器的名称不必是 index
,你可以使用任何你想要的名称。
range()
是 Python 中的一个内置函数。它就像 print()
函数一样,在程序中始终可用。
range(n)
生成一个从零开始的 n
个整数的序列。每次循环它会将值增加1
,直到达到 n
。
因此range(n)
生成一个数字序列:0, 1, 2, …, n-1
。注意,它总是比最终数字(n
)少1
。
以下图表说明了 for
循环语句:
以下示例展示了如何使用 for
循环与 range()
函数将 0 到 4 的 5 个数字显示到屏幕上:
for index in range(5):
print(index)
输出:
0
1
2
3
4
在这个示例中for
循环精确地执行了五次 print(index)
语句。
如果你想在屏幕上显示从 1 到 5 的 5 个数字,你可以这样做:
for index in range(5):
print(index + 1)
输出:
1
2
3
4
5
在这个示例中,我们在每次迭代中将 index
增加 1 并打印出来。然而,有一种更好的方法可以实现这一点。
指定序列的起始值
默认情况下range()
函数使用零作为序列的起始数字。
此外range()
函数允许你像这样指定起始数字:
range(start, stop)
在这个语法中range()
函数会将起始值增加一,直到达到终止值。
以下示例使用 for
循环将 1 到 5 的五个数字显示到屏幕上:
for index in range(1, 6):
print(index)
输出:
1
2
3
4
5
指定序列的增量
默认情况下range(start, stop)
在每次循环迭代中将起始值增加一。
若要以不同的数字增加起始值,你可以使用以下形式的 range()
函数:
range(start, stop, step)
在这种形式中,你可以指定 range()
函数应该增加的值。
以下示例显示了从 0 到 10 的所有奇数:
for index in range(0, 11, 2):
print(index)
输出:
0
2
4
6
8
10
使用 Python for 循环计算序列的和
以下示例使用 for
循环语句计算从 1 到 100 的数字之和:
sum = 0
for num in range(101):
sum += num
print(sum)
输出:
5050
它的工作原理如下:
首先,将
sum
初始化为零。其次,在每次迭代中,将从 1 到 100 的数字加到
sum
上。最后,将
sum
显示到屏幕上。
顺便说一下,如果你是一名数学家,你可以使用简单的公式:
n = 100
sum = n * (n+1)/2
print(sum)
总结
使用
for
循环语句可以运行固定次数的代码块。使用
range(start, stop, step)
可以自定义循环。