【python百炼成魔】Python循环语句:掌握while循环的实战应用

文章介绍了Python编程中的while循环结构,包括其基本语法和使用案例,如打印数字、计算偶数和、模拟用户登录及猜数字游戏,帮助读者理解如何在满足特定条件下重复执行代码块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

在这里插入图片描述

循环结构

1. 什么是循环结构

循环结构是编程中的一种控制结构,用于重复执行一段代码块,直到满足特定的条件为止。它允许程序多次执行相同或类似的操作,从而实现更有效和简洁的代码编写。

循环结构通常用于处理需要进行重复操作的情况,例如遍历列表或数组的元素、执行递增或递减的计算、处理用户输入等等。通过使用循环结构,程序可以自动地重复执行特定的代码块,而不必手动重复相同的操作。

在大多数编程语言中,常见的循环结构有两种:for循环和while循环。

今天我们重点来看while循环

2. python的while循环

语法:

while condition:
    # 执行循环体内的代码

3. 循环语句的图示

在这里插入图片描述

if条件语句,为true执行一次,而while是判断n+1次,条件为true执行n次。

while的使用案例

1. 使用while循环打印从1到5的数字

num = 1

while num <= 5:
    print(num)
    num += 1

初始化num为1,并使用while循环来重复执行打印数字和递增num的操作。每次循环迭代中,我们首先打印当前的num值,然后将num增加1。只要num小于或等于5,循环将继续执行。当num大于5时,条件不再满足,循环停止。

2. 计算1-100的偶数和

num = 1  # 初始化计数器变量num
sum_even = 0  # 初始化偶数和的变量sum_even

while num <= 100:
    if num % 2 == 0:  # 判断num是否为偶数
        sum_even += num  # 如果是偶数,将其累加到sum_even中
    num += 1  # 将计数器num加1

print("1到100之间的偶数和为:", sum_even)

我们使用变量num从1开始遍历到100。在每次循环迭代中,首先判断num是否为偶数,条件是num % 2 == 0。如果满足条件,说明num是偶数,然后将其累加到sum_even变量中。最后,将num加1,继续下一次循环迭代,直到num大于100,while循环结束。

最后,我们输出累加后的偶数和sum_even,结果将是1到100之间的所有偶数的和。

也可以使用更简洁的方法:

sum_even = 0
num = 2  # 从第一个偶数2开始
while num <= 100:
    sum_even += num
    num += 2
print("1到100之间的偶数和为:", sum_even)
  • 首先,我们初始化变量sum_even为0,用于存储偶数的累加和。
  • 初始化变量num为2,因为我们从第一个偶数2开始。
  • 进入while循环,判断num是否小于等于100。如果条件为真,则执行循环体内的代码。
  • 在循环体内,将当前的num值累加到sum_even中。
  • 将num增加2,以获取下一个偶数。因为每次迭代都是偶数,所以我们可以直接增加2,而不需要进行条件判断。
  • 重复步骤3到步骤5,直到num大于100,while循环结束。
  • 最后,我们打印出累加后的偶数和sum_even,结果将是1到100之间的所有偶数的和。

3. 模拟用户登录给三次机会

login_attempts = 0  # 初始化登录尝试次数

while login_attempts < 3:
    username = input("请输入用户名: ")
    password = input("请输入密码: ")

    # 进行用户认证的逻辑判断,此处仅作示例
    if username == "admin" and password == "password":
        print("登录成功!")
        break  # 登录成功,跳出循环
    else:
        print("登录失败,请重试。")
        login_attempts += 1  # 计数器加1

if login_attempts == 3:
    print("登录失败次数过多,账号已锁定。")

4. 猜数字游戏

import random

play_again = True  # 是否继续玩的标志

while play_again:
    secret_number = random.randint(1, 100)  # 生成1到100之间的随机整数
    attempts = 0  # 猜测次数计数器

    while attempts < 3:
        guess = int(input("请猜一个1到100之间的数字: "))

        if guess == secret_number:
            print("恭喜你,猜对了!")
            play_again = False  # 猜对了,不再询问是否继续玩
            break
        elif guess < secret_number:
            print("猜的数字太低了!")
        else:
            print("猜的数字太高了!")

        attempts += 1  # 猜测次数加1

    if attempts == 3:
        choice = input("猜测次数已达上限,是否还想继续玩?(Y/N): ")
        if choice.lower() == "n":
            play_again = False  # 不再继续玩

总结

我是沐风晓月,我在csdn等你

原创不易,还希望各位大佬支持一下 \textcolor{blue}{原创不易,还希望各位大佬支持一下} 原创不易,还希望各位大佬支持一下

👍 点赞,你的认可是我创作的动力! \textcolor{green}{点赞,你的认可是我创作的动力!} 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向! \textcolor{green}{收藏,你的青睐是我努力的方向!} 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富! \textcolor{green}{评论,你的意见是我进步的财富!} 评论,你的意见是我进步的财富!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值