pin_drop当前位置:知识文库 ❯ 图文

Python while循环

概述

while 循环是 Python 的基本循环结构之一,它在条件为真时重复执行代码块。while 循环适合在不确定循环次数、需要根据条件决定是否继续的场景中使用。


语法

代码示例

while condition:
    statement(s)

基本用法

计数循环

代码示例

count = 0
while count < 5:
    print(f"计数: {count}")
    count += 1

输出:

代码示例

计数: 0
计数: 1
计数: 2
计数: 3
计数: 4

累加求和

代码示例

total = 0
n = 1
while n <= 100:
    total += n
    n += 1
print(f"1到100的和: {total}")

输出:

代码示例

1到100的和: 5050

死循环

当条件始终为真时,循环永远不会结束:

代码示例

while True:
    response = input("输入q退出: ")
    if response == "q":
        break

while True 常用于需要用户交互退出的场景,但必须确保有退出机制(如 break)。


while-else

while 循环可以搭配 else 子句,当循环正常结束(未被 break 中断)时执行 else 代码块:

代码示例

n = 10
while n > 0:
    n -= 1
    if n == 3:
        break
else:
    print("循环正常结束")
print(f"n = {n}")

输出:

代码示例

n = 3

代码示例

n = 5
while n > 0:
    n -= 1
else:
    print("循环正常结束")

输出:

代码示例

循环正常结束

常见应用场景

猜数字游戏

代码示例

import random
target = random.randint(1, 100)
guess = 0
while guess != target:
    guess = int(input("猜一个数字(1-100): "))
    if guess < target:
        print("太小了")
    elif guess > target:
        print("太大了")
print("猜对了!")

逐位处理

代码示例

num = 12345
while num > 0:
    digit = num % 10
    print(digit, end=" ")
    num //= 10

输出:

代码示例

5 4 3 2 1

注意事项

避免死循环:确保循环条件最终会变为 False,或在循环内有 break 退出。

更新条件变量:忘记更新循环变量会导致死循环。

else 子句else 只在循环正常结束时执行,break 退出时不执行。


小结

  • while 在条件为真时重复执行代码块

  • 适合场景:不确定循环次数的场景

  • 交互式循环while True 配合 break 实现交互式循环

  • while-elseelse 在循环正常结束时执行


练习题

练习1

编写程序,使用 while 循环计算 2 的 n 次方,当结果超过 1000 时停止,输出最大的不超过 1000 的 2 的幂。

练习2

编写一个函数 gcd(a, b),使用辗转相除法(欧几里得算法)计算两个数的最大公约数。

常见问题

while循环和for循环有什么区别?

while循环根据条件决定是否继续执行,适合不确定循环次数的场景;for循环用于遍历可迭代对象,循环次数由可迭代对象的长度决定。

如何避免while死循环?

确保循环条件最终会变为False,在循环体内更新条件变量,或使用break语句提供退出机制。

while-else中的else什么时候执行?

else只在循环正常结束时执行,如果循环被break中断,则else代码块不会执行。

while True有什么用途?

while True常用于需要用户交互退出的场景,通常配合break语句使用,确保有明确的退出机制。

标签: while循环 Python基础 循环结构 while-else 死循环 break语句 编程入门

本文涉及AI创作

内容由AI创作,请仔细甄别

list快速访问

上一篇: Python三元表达式 - 条件赋值 下一篇: Python for循环

poll相关推荐