27.while 循环

发布时间 2023-11-12 00:01:41作者: 想要暴富的小男孩

什么是 while 循环

在日常的生活中有时候循环的次数通常不会在刚开始就知道,而是满足条件之后就停止循环,如有一路公交车不是固定时间间隔发车,而是在人数满足多少个之后就发车,一直到晚上的11点准时收工,那么没有到11点的话就会一直重复,直到条件不满足时才结束的循环,称为条件循环。只要条件为真,这种循环会一直持续下去,通常指的是 while 循环。

while 循环的语法

while 条件表达式:
循环体

当条件表达式的返回值为真时,则执行循环体中的语句,执行完毕后,重新判断条件表达 式的返回值,直到表达式返回的结果为假时,退出循环。

以生活中的例子来理解 while 循环的执行流程,在年会上,主持人要求参与人沿着主持台跑圈。要求当听到主持人喊停止时就停下来。参与者每跑一圈,可能会请求一次主持人发起停止指令。如果老师喊停,则停下来,即循环结束。否则继续跑步,即执行循环。

while 循环实战

实战1: 求 1~10 之间所有整数的乘积。

# 保存结果的变量
result = 1
# 循环控制变量
n = 2
# 开始循环
while n <= 10:
# 计算乘积
result *= n
# 改变循环变量向结束条件趋近
n += 1

# 输出结果
print("1~10的乘积为:", result)

实战2: 输入密码,直到密码输入正确,输出”登录成功“。

password = "password" # 设置正确的密码
input_password = ""

while input_password != password:
input_password = input("请输入密码: ")

print("密码正确,登录成功!")

实战3: 在行酒令中,有一个数7小游戏,游戏参与者依次报数,但需要跳过所有包含7或7的整数倍的数字,编写程序找出1~100范围内所有符合该条件的数字。

# 循环变量实始化
n = 1
# 循环条件
while n<=100:
# 数字对7求模为0,则表示该数字是7的倍数
# 将数字转换为字符串类型,使用成员运算符判断字符7是否在字符串中,检查包含关系
if n % 7 == 0 or "7" in str(n):
# 输出满足条件的数字
print(n)
# 改变循环变量趋近于结束条件
n += 1