循环在编程中用于重复特定的代码块。在本文中,您将学习如何在Python中创建while循环。
只要测试表达式(条件)为真,Python中的while循环就可以迭代代码块。
当我们不知道事先迭代的次数时,通常使用此循环。
while test_expression: Body of while
在while循环中,首先检查测试表达式。仅当test_expression计算结果为True时,才输入循环的主体。一次迭代后,再次检查测试表达式。这个过程一直持续到test_expression评估结果为False为止。
在Python中,while循环的主体是通过缩进确定的。
主体以缩进开始,第一条未缩进的线标记结束。
Python将任何非零值解释为True。None并且0被解释为False。
# 添加自然数的程序 # 数字最多 # sum = 1+2+3+...+n # 从用户那里获取输入 # n = int(input("Enter n: ")) n = 10 # 初始化sum和计数器 sum = 0 i = 1 while i <= n: sum = sum + i i = i+1 # 更新 counter # 打印sum print("sum的值", sum)
运行该程序时,输出为:
Enter n: 10 sum的值 55
在上面的程序中,只要我们的计数器变量i小于或等于n(在我们的程序中为10),则测试表达式为True。
我们需要在循环体内增加计数器变量的值。这是非常重要的(千万不要忘记)。否则,将导致无限循环(永无止境的循环)。
最后,显示结果。
与for循环相同,而while循环也可以具有可选else块。
如果while循环中的条件求值为False,则执行else该部分。
while循环可以使用break语句终止。在这种情况下,该else语句将被忽略。因此,如果没有break中断并且条件为False,则while循环的else语句将运行。
这是一个示例来说明这一点。
'''举例说明 使用else语句 与while循环''' counter = 0 while counter < 3: print("内部循环") counter = counter + 1 else: print("else语句")
输出结果
内部循环 内部循环 内部循环 else语句
在这里,我们使用计数器变量来打印字符串 内部循环 三次。
在第四次迭代中,while中条件变为False。因此,该else部分会被执行。