Python入门之while循环

1. while循环的基本概念

if语句的代码块仅在条件为True时执行一次;而while语句的核心是重复执行—— 只要条件为True,循环体内的代码块就会不断运行(称为 “迭代”),直到条件变为False时停止,程序再继续执行循环外的后续代码。循环体的每一次执行过程,称为一次 “迭代”。

语法结构

while 条件表达式:
    循环体(缩进的代码块)

示例:

用while循环打印1到5的数字:

count = 1  #初始化计数器
while count <= 5:  #条件:count小于等于5时继续循环
    print(count)   #循环体:打印当前count
    count += 1     #每次迭代后更新条件(避免无限循环)
#输出:1 2 3 4 5(每行一个数字)

2. 无限循环

如果while循环的条件永远为True(例如直接写while True),循环会无终止地运行,这种情况称为 “无限循环”。
无限循环在实际开发中需谨慎使用,若未合理控制,会导致程序卡死。通常会配合break语句让循环在特定条件下终止。

示例:

让用户输入内容,输入 “quit” 则退出循环:

while True:  #条件永远为True,理论上无限循环
    user_input = input("请输入内容(输入'quit'退出):")
    if user_input == "quit":
        break  #当输入为'quit'时,强制终止循环
    print(f"你输入了:{user_input}")

3. break语句

break用于提前终止整个循环(无论当前条件是否为True),执行循环外的后续代码。
仅能在循环(while或for)内部使用,在循环外使用会报错。

示例:

寻找1到10中第一个能被3和5同时整除的数,找到后立即停止:

num = 1
while num <= 10:
    if num % 3 == 0 and num % 5 == 0:
        print(f"找到目标数:{num}")
        break  #找到后立即终止循环,不再继续迭代
    num += 1
#输出:找到目标数:会是15吗? 不,1-10中没有,所以循环会执行到num=11后结束?
#修正:1-10中3和5的公倍数是15,所以上述代码不会触发break,循环会自然结束。
#更合适的示例:找1-20中第一个3和5的公倍数:
num = 1
while num <= 20:
    if num % 3 == 0 and num % 5 == 0:
        print(f"找到目标数:{num}")
        break  #触发break,循环终止
    num += 1
#输出:找到目标数:15(循环在num=15时终止,不会继续检查16-20)

4. continue语句

continue用于提前结束当前迭代(跳过循环体中剩余的代码),直接进入下一次迭代。
仅能在循环内部使用,与break不同:break终止整个循环,continue只跳过当前次迭代。

示例:

打印1到10中的奇数(跳过偶数):

num = 0
while num < 10:
    num += 1
    if num % 2 == 0:  #如果是偶数
        continue      #跳过当前迭代的后续代码,直接进入下一次
    print(num)  #只打印奇数
#输出:1 3 5 7 9(每行一个数字)

5. 总结

  • while 循环:条件为 True 时重复执行循环体,直到条件为 False。
  • 无限循环:条件恒为 True,需配合 break 控制终止。
  • break:立即终止整个循环,跳出循环体。
  • continue:跳过当前迭代的剩余代码,直接开始下一次迭代。


原创内容声明

本文为原创内容,版权归作者所有,未经授权禁止任何形式转载

(0)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注