Python 程序设计入门(021)—— 循环结构程序设计(2):while 循环
目录
一、while 循环的语法
while 循环通过一个条件来控制是否继续执行循环体中的语句。其语法格式如下:
while 条件表达式:
循环体
说明:
(1)当条件表达式的返回值为 True 时,执行循环体中的语句;
(2)循环体执行完毕后,重新判断条件表达式的返回值,直到表达式返回的结果为 False,退出循环。
例如:
num = 10
while num != 0:
num = int(input("请输入一个整数:"))
print("你输入的整数为:",num)
程序运行结果为:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个整数:22
你输入的整数为: 22
请输入一个整数:1
你输入的整数为: 1
请输入一个整数:-22
你输入的整数为: -22
请输入一个整数:0
你输入的整数为: 0
二、while True 循环(while 循环的条件永远为真)
while True 循环的格式如下:
while True:
循环体
例如:
(1)显示当前时间,并且每1秒刷新一次
import time
while True:
print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()),end="\r")
time.sleep(1)
以上程序的运行结果如下:
(2)显示排班表
import time
list1 = ["张三","李四","王强","张静","刘鹏","王菲","刘莉"]
while True:
x = list1.pop(0)
list1.append(x)
print("当前值班人员名单:",list1[0],end="\r")
time.sleep(1)
以上程序的运行结果如下:
(3)使用 break 退出 while True 循环
num = 0
while True:
num = int(input("请输入一个数:"))
if num == 0:
print("输入的是0,循环结束。")
break
程序运行结果为:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:10
请输入一个数:-25
请输入一个数:1
请输入一个数:2
请输入一个数:0
输入的是0,循环结束。
三、在循环体中使用 break 语句
使用 break 语句可以终止当前的循环,for 循环和 while 循环都可以使用 break 语句。break 语句的语法比较简单,只需要将其加入 while 或 for 循环的循环体即可。
break 语句一般会结合 if 语句使用,表示在某种条件下跳出循环。如果使用循环嵌套,break 语句将跳出最内层的循环。在 while 循环中使用 break 语句的形式如下:
while 条件表达式1:
循环代码
if 条件表达式2:
break
在 for 循环中使用 break 语句的形式如下:
for 迭代变量 in 对象:
循环代码
if 条件表达式:
break
例如:
(1)判断一个整数是否是素数
使用 for 循环:
num = 3
for i in range(2,int(num ** 0.5) + 1):
if num % i == 0:
print(num,"不是素数")
break
else:
print(num,"是素数")
程序运行结果为:
===================== RESTART: C:\Python\Python38\First.py =====================
3 是素数
使用 while 循环:
num = 7
i = 2
while i < int(num ** 0.5) + 1:
if num % i == 0:
print(num,"不是素数")
break
i += 1
if i >= int(num ** 0.5) + 1:
print(num,"是素数")
程序运行结果为:
===================== RESTART: C:\Python\Python38\First.py =====================
7 是素数
(2)对输入的数进行累加操作(当输入 0 或者负数时结束)
sum1 = 0
while True:
s = float(input("请输入数值:"))
if s <= 0:
break
sum1 += s
print("累加和为:",sum1)
程序运行结果为:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入数值:2
累加和为: 2.0
请输入数值:2.5
累加和为: 4.5
请输入数值:12.6
累加和为: 17.1
请输入数值:0
四、在循环体中使用 continue 语句
continue 语句可以终止本次循环而提前进入下一次循环。continue 语句的语法比较简单,只需要将其加入相应的 for 循环或 while 循环的循环体中。
在 while 循环中使用 continue 语句的形式如下:
while 条件表达式1:
循环代码
if 条件表达式2:
continue
在 for 循环中使用 continue 语句的形式如下:
for 迭代变量 in 对象:
循环代码
if 条件表达式:
continue
例如:对输入的数进行累加操作(忽略负数),输入0结束
sum1 = 0
while True:
s = float(input("请输入数值:"))
if s < 0:
continue
sum1 += s
print("累加和为:",sum1)
if s == 0:
break
程序运行结果为:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入数值:12
累加和为: 12.0
请输入数值:4
累加和为: 16.0
请输入数值:5.2
累加和为: 21.2
请输入数值:-233
请输入数值:-52
请输入数值:0
累加和为: 21.2