文章目录

  • 一、while 循环
  • 1、while 循环语法
  • 2、代码示例 1 - while 循环操作
  • 3、代码示例 2 - while 循环求和
  • 4、代码示例 3 - 猜数字







一、while 循环




1、while 循环语法



循环 有两个重要的要素 :

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


while 循环 语法 :

while 循环控制条件:
	循环操作
	循环操作

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

执行结果 :

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

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



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}")

执行结果 :

sum = 500500

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



4、代码示例 3 - 猜数字



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

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


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

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



由于不知道循环次数 , 有可能一次就猜中 , 有可能无限次都猜不中 , 这里 使用 布尔类型变量 ( 初始值为 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} 次")

执行结果 :

生成随机数 : 81
猜数字 :80
猜小了
猜数字 :82
猜大了
猜数字 :80
猜小了
猜数字 :81
猜中了
猜测了 = 4 次

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