Python while 循环
提示
- Python
while
循环基础:通过评估条件来重复执行代码块,直到条件不再为真 。 - 应用案例与逻辑:通过具体示例展示
while
循环的工作机制,如显示一系列数字或计算总和。 - 特殊用法与对比:介绍无限循环和
while
循环中的else
用法,以及与for
循环的区别。
在编程中,循环用于重复执行一段代码。例如,如果我们想展示一条信息100次,那么我们可以使用循环。这只是一个简单的例子,我们可以通过循环实现更多功能。
在上一教程中,我们学习了Python for 循环。现在我们将学习 while
循环。
Python while 循环
Python while
循环用于在满足某个条件时运行一段代码。
while
循环的语法是:
while 条件:
# while 循环的主体
这里,
while
循环评估条件
- 如果
条件
评估为True
,则执行while
循环内的代码。 - 再次评估
条件
。 - 这个过程持续进行,直到条件为
False
。 - 当
条件
评估为False
时,循环停止。
Python while 循环的流程图
示例1:Python while 循环
# 程序用于显示数字1到5
# 初始化变量
i = 1
n = 5
# while 循环从 i = 1 到 5
while i <= n:
print(i)
i = i + 1
输出
1
2
3
4
5
程序的工作原理如下:
变量 | 条件:i <= n | 行动 |
---|---|---|
i = 1 n = 5 | True | 打印 1 。i 增加到 2。 |
i = 2 n = 5 | True | 打印 2 。i 增加到 3。 |
i = 3 n = 5 | True | 打印 3 。i 增加到 4。 |
i = 4 n = 5 | True | 打印 4 。i 增加到 5。 |
i = 5 n = 5 | True | 打印 5 。i 增加到 6。 |
i = 6 n = 5 | False | 循环终止。 |
示例 2:Python while 循环
# 程序用于计算数字的总和
# 直到用户输入零
total = 0
number = int(input('输入一个数字:'))
# 添加数字直到数字为零
while number != 0:
total += number # total = total + number
# 再次输入整数
number = int(input('输入一个数字:'))
print('总计 =', total)
输出
输入一个数字:12
输入一个数字:4
输入一个数字:-5
输入一个数字:0
总计 = 11
在上面的示例中,while
循环迭代,直到用户输入零。当用户输入零时,测试条件评估为 False
,循环结束。
Python 中的无限 while 循环
如果循环的 条件
始终为 True
,则循环无限次运行(直到内存满)。例如,
age = 32
# 测试条件始终为 True
while age > 18:
print('你可以投票')
在上面的示例中,条件
始终评估为 True
。因此,循环体将无限次运行。
Python 中带 else 的 while 循环
在 Python 中,while
循环可能有一个可选的 else
块。
这里,循环的 else
部分在循环条件评估为 False
后执行。
counter = 0
while counter < 3:
print('循环内部')
counter = counter + 1
else:
print('else 内部')
输出
循环内部
循环内部
循环内部
else 内部
注意:如果 while
循环因 break 语句而终止,那么 else
块将不会执行。
counter = 0
while counter < 3:
# 因为 break 而结束循环
# else 部分不会执行
if counter == 1:
break
print('循环内部')
counter = counter + 1
else:
print('else 内部')
输出
循环内部
else 内部
Python 的 for 与 while 循环
当迭代次数已知时,通常使用 for
循环。例如,
# 这个循环迭代 4 次(0 到 3)
for i in range(4):
print(i)
当迭代次数未知时,通常使用 while
循环。例如,
while 条件:
# 直到条件评估为 False 才运行代码