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


    前言

    在这里插入图片描述

    循环结构

    1. 什么是循环结构

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

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

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

    今天我们重点来看while循环

    2. python的while循环

    语法:

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

    3. 循环语句的图示

    在这里插入图片描述

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

    while的使用案例

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

    num = 1
    
    while num <= 5:
        print(num)
        num += 1
    
    • 1
    • 2
    • 3
    • 4
    • 5

    初始化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)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    我们使用变量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)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 首先,我们初始化变量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("登录失败次数过多,账号已锁定。")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    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  # 不再继续玩
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    总结

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

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

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

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

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

  • 相关阅读:
    conda安装Tensorflow2.9的GPU版本
    数据库持久化+JDBC数据库连接
    发现一个舔狗神器,Python真的太厉害了,自动下载妹子视频...
    第4章 向量、SIMD和GPU体系结构中的数据级并行
    PyTorch常用5个抽样函数
    竟然还有人说ArrayList是2倍扩容,今天带你手撕ArrayList源码
    Android Studio 实现登录注册-源代码 (连接MySql数据库)
    SQL注入漏洞(原理篇)
    【大画数据结构】第一话 —— 动态顺序表的增删改查
    离散数学 --- 特殊图 --- 偶图与平面图
  • 原文地址:https://blog.csdn.net/wisdom_futrue/article/details/131414473