侧边栏壁纸
博主头像
编程之家 博主等级

行动起来,活在当下

  • 累计撰写 37 篇文章
  • 累计创建 3 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

Python 程序设计 - 10. while 循环

李航
2025-12-05 / 0 评论 / 0 点赞 / 2 阅读 / 0 字

Python 程序设计 - 10. while 循环

1. 引言

在 Python 中,除了 for 循环之外,while 循环也是一种常用的控制结构。与 for 循环通过遍历一个可迭代对象来执行任务不同,while 循环则是基于条件判断来执行代码。只要条件为 Truewhile 循环就会不断地执行循环体中的代码。理解 while 循环的工作方式对于编写高效的程序非常重要。

2. while 循环介绍

while 循环的基本语法如下:

while 条件:
    # 执行的代码
  • 条件:每次循环之前,都会判断条件表达式。如果条件为 True,就执行循环体内的代码;如果条件为 False,则停止循环。
  • 循环体:是每次条件为 True 时执行的代码块。

3. while 循环语法与案例

3.1 基本语法:打印数字

我们首先来看看一个简单的 while 循环示例,它打印 1 到 5 的数字。

i = 1
while i <= 5:
    print(i)
    i += 1  # 递增 i

输出

1
2
3
4
5

在这个例子中,i 从 1 开始,每次循环后都将其加 1。当 i 大于 5 时,循环结束。

这里,while True 是一个无限循环,通过 if 语句判断 i 是否大于 5,如果是,就使用 break 跳出循环。

3.3 使用 while 计算总和

通过 while 循环来计算 1 到 100 的和:

sum = 0
i = 1
while i <= 100:
    sum += i
    i += 1
print("1 到 100 的和是:", sum)

输出

1 到 100 的和是: 5050

在这个例子中,sum 会累加从 1 到 100 的所有数字,直到 i 大于 100 时停止循环。

3.4 使用 while 打印偶数

我们可以通过 while 循环来打印 1 到 20 中的偶数:

i = 2
while i <= 20:
    print(i)
    i += 2  # 步长为 2,确保打印偶数

输出

2
4
6
8
10
12
14
16
18
20
3.5 计算阶乘

使用 while 循环计算一个数字的阶乘:

num = 5
factorial = 1
while num > 0:
    factorial *= num
    num -= 1
print("5 的阶乘是:", factorial)

输出

5 的阶乘是: 120

在这个例子中,我们使用 while 循环计算了 5 的阶乘:5 * 4 * 3 * 2 * 1 = 120

4. while 循环常见应用

4.1 while 循环用于输入验证

可以通过 while 循环来要求用户输入有效的数据,直到满足要求为止:

age = -1
while age <= 0:  # 如果输入的是无效的年龄,继续要求输入
    age = int(input("请输入您的年龄: "))
    if age <= 0:
        print("年龄必须是一个正数,请重新输入。")
print("您的年龄是:", age)

这个程序会持续询问用户直到输入一个合法的年龄。

4.2 while 循环模拟猜数字游戏

在猜数字游戏中,我们可以用 while 循环来反复要求用户输入一个数字,直到猜对为止。

import random
number_to_guess = random.randint(1, 10)
guess = 0
while guess != number_to_guess:
    guess = int(input("猜一个 1 到 10 之间的数字: "))
    if guess < number_to_guess:
        print("太小了!再试一次。")
    elif guess > number_to_guess:
        print("太大了!再试一次。")
print("恭喜你,猜对了!")

5. 练习题

练习 1:打印 1 到 10 的数字
i = 1
while i <= 10:
    print(i)
    i += 1

输出

1
2
3
4
5
6
7
8
9
10
练习 2:计算 1 到 50 的奇数和
odd_sum = 0
i = 1
while i <= 50:
    if i % 2 != 0:  # 只有奇数
        odd_sum += i
    i += 1
print("1 到 50 的奇数和是:", odd_sum)

输出

1 到 50 的奇数和是: 625
练习 3:计算 1 到 100 的总和,使用 while 循环
sum = 0
i = 1
while i <= 100:
    sum += i
    i += 1
print("1 到 100 的和是:", sum)

输出

1 到 100 的和是: 5050

6. 总结

while 循环是 Python 中另一种强大的循环结构,它通过条件判断来决定是否继续执行循环体。while 循环可以处理许多需要根据条件动态控制执行的任务。掌握 while 循环的使用,可以帮助你更灵活地解决一些编程问题,例如处理不定次数的任务、输入验证和猜数字等。通过这些练习和示例,希望你能更加熟悉 while 循环的应用方式。

0

评论区