• 【Python】循环语句 ① ( while 循环语法 | 代码示例 1 - while 循环操作 | 代码示例 2 - while 循环求和 | 代码示例 3 - 猜数字 )






    一、while 循环




    1、while 循环语法


    循环 有两个重要的要素 :

    • 循环条件 : 只有 满足 循环条件 才执行循环操作 ; 如果不满足条件 , 那么将退出循环 , 执行循环外的后续代码 ;
    • 循环操作 : 循环执行的代码逻辑 ;

    while 循环 语法 :

    while 循环控制条件:
    	循环操作
    	循环操作
    
    • 1
    • 2
    • 3

    while 是 循环关键字 , 表示该操作是一个循环操作 ;

    while 关键字后是 " 循环控制条件 " ;

    循环控制条件 是 布尔表达式 / 布尔变量 / 布尔字面量 , 值为 True 继续循环 , 值为 False 终止循环 ;

    只有 满足 循环控制条件 ( 循环条件值为 True ) 才能执行循环操作 , 如果不满足该条件 ( 循环条件值为 False ) , 则退出循环 ;


    while 循环的 空格缩进 与 判断条件 一样 , 通过空格缩进 , 判断代码的归属 , 相当于 其它语言的 大括号 ;

    Python 中 , 空格缩进 是 Python 语法中很重要的一部分 , 4 空格缩进决定了 Python 代码逻辑结构 ; 多行代码同时具有 4 空格的缩进 , 那么这些代码相当于写在同一个大括号中 ;

    • 如果使用 普通文本编辑器 编写 Python 代码 , 建议使用 4 个空格进行缩进 ;
    • 如果使用 IDE 环境 , 如 PyCharm 进行开发 , 一般 使用 TAB 键进行缩进 , PyCharm 会自动将 Tab 键转为 4 空格 ;

    2、代码示例 1 - while 循环操作


    下面的代码中 , 变量 i 是循环控制变量 ;

    循环控制条件 是 i < 10 :

    • 如果 i < 10 则继续循环 , 执行循环操作 ;
    • 如果 i >= 10 则退出循环 , 执行后续操作 ;

    代码示例 :

    """
    while 循环代码示例
    """
    
    # 循环控制变量
    i = 0
    # 循环控制条件
    #   如果 i < 10 则继续循环
    #   如果 i >= 10 则终止循环
    while i < 10:
        # 循环操作
        print(f"i = {i}")
        # 循环控制变量自增
        i = i + 1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    执行结果 :

    i = 0
    i = 1
    i = 2
    i = 3
    i = 4
    i = 5
    i = 6
    i = 7
    i = 8
    i = 9
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    在这里插入图片描述


    3、代码示例 2 - while 循环求和


    代码示例 :

    """
    while 循环代码示例
        求 1 ~ 1000 之和
    """
    
    # 循环控制变量
    i = 1
    # 综合
    sum = 0
    # 循环控制条件
    #   如果 i <= 1000则继续循环
    #   如果 i > 1000 则终止循环
    while i <= 1000:
        # 循环操作
        sum += i
        # 循环控制变量自增
        i = i + 1
    print(f"sum = {sum}")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    执行结果 :

    sum = 500500
    
    • 1

    在这里插入图片描述


    4、代码示例 3 - 猜数字


    生成一个随机数字 x , 在 while 循环中 , 使用 input 函数从命令行中接收一个数字 , 判断是否猜中随机数 x ,

    • 如果猜中则退出循环 , 计算出循环次数 ;
    • 如果没有猜中 , 则 提示 输入的数字 与 随机数字 x 之间的大小关系 , 然后继续执行循环 ;

    生成随机数 , 可使用 Python 的 random 库 ;

    import random
    # 获得一个 1 ~ 100 之间的随机数
    random_num = random.randint(1, 100)
    
    • 1
    • 2
    • 3

    由于不知道循环次数 , 有可能一次就猜中 , 有可能无限次都猜不中 , 这里 使用 布尔类型变量 ( 初始值为 True ) 作为 循环条件 ;

    如果要终止循环 , 则 将该 布尔类型变量 设置为 False 即可 ;


    代码示例 :

    """
    while 循环代码示例
        猜数字
    """
    # 导入 random 库
    import random
    
    # 获得一个 1 ~ 100 之间的随机数
    random_num = random.randint(1, 100)
    print(f"生成随机数 : {random_num}")
    
    # 循环控制条件
    flag = True
    # 记录循环次数
    count = 0
    
    while flag:
        # 获取命令行输入的字符串
        guess = input("猜数字 :")
        # 将字符串转为 int 数字
        guess_num = int(guess)
        # 循环次数自增 1
        count += 1
    
        # 判断是否猜中, 如果没有猜中猜大了, 还是猜小了
        if guess_num == random_num:
            flag = False
            print("猜中了")
        elif guess_num < random_num:
            print("猜小了")
        elif guess_num > random_num:
            print("猜大了")
    
    print(f"猜测了 = {count} 次")
    
    • 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
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

    执行结果 :

    生成随机数 : 81
    猜数字 :80
    猜小了
    猜数字 :82
    猜大了
    猜数字 :80
    猜小了
    猜数字 :81
    猜中了
    猜测了 = 4
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    在这里插入图片描述

  • 相关阅读:
    Git---git shortlog查看贡献者,对比贡献次数(功能型命令)
    一文了解.Net的CLR、GC内存管理
    微信小程序——轮播图swiper、1秒切换、自动轮播、无缝切换
    日志框架log4j升级至log4j2
    leetcode算法每天一题029:两数相除
    MySQL-DML语言-数据库操作语言-
    全媒体整合营销时代,如何做好网络营销?
    使用 CSS 实现毛玻璃效果
    向量数据库
    JAVA计算机毕业设计校园疫情防控管理系统Mybatis+源码+数据库+lw文档+系统+调试部署
  • 原文地址:https://blog.csdn.net/han1202012/article/details/130879826