Python `while` 循环详解

文章目录

  • Python `while` 循环详解
    • 1. `while` 循环基础
      • 1.1 语法
      • 1.2 示例:打印数字
    • 2. 无限循环和死循环
      • 2.1 无限循环
      • 2.2 结束死循环
    • 3. `while` 循环的控制语句
      • 3.1 `break` 语句
      • 3.2 `continue` 语句
    • 4. `while` 循环的常见应用
      • 4.1 计算累加和
      • 4.2 用户输入验证
    • 5. 总结


Python while 循环详解

在编程中,循环是非常常见的结构,用于重复执行某段代码。Python 提供了两种主要的循环结构:for 循环和 while 循环。今天,我们将深入探讨 while 循环的使用,学习如何控制它的执行,如何避免陷入死循环,以及它在实际编程中的应用场景。

1. while 循环基础

1.1 语法

while 循环的语法格式如下:

while 条件:
    # 代码块
  • 条件:是一个表达式,当它的值为 True 时,循环会继续执行;当它的值为 False 时,循环结束。
  • 代码块:是当条件为 True 时要执行的代码。

1.2 示例:打印数字

下面是一个简单的例子,使用 while 循环打印 1 到 5 的数字:

count = 1
while count <= 5:
    print(count)
    count += 1  # 增加 1

输出:

1
2
3
4
5

在这个例子中,变量 count 从 1 开始,循环检查 count <= 5 是否成立。每次循环结束后,count 增加 1,当 count 超过 5 时,循环结束。

2. 无限循环和死循环

2.1 无限循环

while 循环的条件永远为 True 时,循环将无限执行下去,直到程序被外部中断(如按 Ctrl + C)或出现某种异常。通常,这种循环被称为 死循环(虽然死循环的主要目的是无限执行,但它并不总是错误的,有时它用来等待外部输入或其他条件)。

while True:
    print("This is an infinite loop!")

输出:

This is an infinite loop!
This is an infinite loop!
...

这段代码会一直输出“This is an infinite loop!”,直到你强制终止程序。

2.2 结束死循环

你可以通过使用 break 语句来跳出死循环。例如,下面的代码会在用户输入 exit 时结束循环:

while True:
    user_input = input("Type 'exit' to stop the loop: ")
    if user_input == "exit":
        break
    print(f"You typed: {user_input}")

输出:

Type 'exit' to stop the loop: hello
You typed: hello
Type 'exit' to stop the loop: exit

当用户输入 exit 时,break 语句会停止循环。

3. while 循环的控制语句

3.1 break 语句

break 语句用于立即终止当前循环,无论循环条件是否已满足。这通常用于在满足某个条件时跳出循环。

count = 0
while count < 10:
    count += 1
    if count == 5:
        break  # 当 count 为 5 时,跳出循环
    print(count)

输出:

1
2
3
4

3.2 continue 语句

continue 语句用于跳过当前循环中的剩余部分,直接开始下一次循环。当条件成立时,它会跳过本次循环的其余部分,立即检查条件并进行下一次循环。

count = 0
while count < 5:
    count += 1
    if count == 3:
        continue  # 跳过 count 为 3 时的打印
    print(count)

输出:

1
2
4
5

count 等于 3 时,continue 会跳过当前循环,直接开始下一次循环。

4. while 循环的常见应用

4.1 计算累加和

使用 while 循环可以轻松计算从 1 到任意数字的累加和。比如,计算 1 到 100 的和:

n = 1
total = 0
while n <= 100:
    total += n
    n += 1
print("The sum of 1 to 100 is:", total)

输出:

The sum of 1 to 100 is: 5050

4.2 用户输入验证

while 循环也非常适合用于验证用户输入,直到用户提供有效的输入为止。例如,要求用户输入一个有效的年龄值:

while True:
    age = input("Please enter your age: ")
    if age.isdigit() and int(age) > 0:
        print(f"Your age is {age}")
        break
    else:
        print("Invalid input. Please enter a valid positive number.")

输出:

Please enter your age: -5
Invalid input. Please enter a valid positive number.
Please enter your age: 25
Your age is 25

5. 总结

while 循环是 Python 中一个非常重要的控制结构,适用于需要根据条件反复执行某段代码的场景。掌握 while 循环的使用可以让你在编程中更加灵活地控制程序的执行流。

  • 基本语法while 循环基于条件执行代码,直到条件不成立。
  • 无限循环:当条件为 True 时,循环会永远执行,直到通过 break 或外部中断来停止。
  • breakcontinuebreak 用于跳出循环,continue 用于跳过当前循环,继续执行下一次循环。
  • 常见应用while 循环可以用于计算累加和、用户输入验证等场景。

通过合理使用 while 循环,你可以实现更为灵活和高效的代码结构!

你可能感兴趣的:(杂谈,python,开发语言,linux,c语言,后端,软件工程,软件构建)