while和if的用法基本类似,区别在于:if 条件成立,则执行一次; while 条件成立,则重复执
行,直到条件不成立为止。
1.while循环的格式
while 条件:
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
...(省略)...
注意:
while
语句以及缩进部分是一个完整的代码块
举例1:
i = 0
while i < 5:
print("当前是第%d次执行循环" % i)
i += 1
运行结果:
注意点:
1. while的条件需得到布尔类型,True表示继续循环,False表示结束循环
2.需要设置循环终止的条件,如i+=1配合i<100,就能确保100次后停止,否则将无限循环
3.空格缩进和if判断一样,都需要设置
2.while循环应用
1.
计算
1~100
的累积和(包含
1
和
100
)
参考代码:
i = 1
sum = 0
while i <= 100:
sum = sum + i
i += 1
print("1~100的累积和为:%d" % sum)
运行结果:
2. 计算1~100之间偶数的累积和(包含1和100)
参考代码:
i = 1
sum = 0
while i <= 100:
if i % 2 == 0:
sum = sum + i
i+=1
print("1~100的累积和为:%d" % sum)
3.while循环基础案例
i = 0 # 内外循环的控制变量不能一样
while i < 5:
j = 0 # 内循环的控制变量必须要在外循环里初始化
while j < 5:
print('j= %d' % j)
j += 1
print('i= %d' % i)
i += 1
举例2:
代码展示:
#获取范围在1-100的随机数字
import random
num = random.randint(1,100)
#定义一个变量,记录总共猜测了多少次
count = 0
#通过一个布尔类型的变量,做循环是否继续的标记
flag = True
while flag:
guess_num = int(input("请输入你猜测的数字:"))
count += 1
if guess_num == num :
print("猜中了")
#设置为False就是终止循环的条件flag = False
else:
if guess_num > num :
print("你猜的大了")
else:
print("你猜的小了")
print(f"你总共猜测了{count}次")
运行结果:
4. while 循环嵌套
while
嵌套就是:while
里面还有 while
语法格式:
while 条件 1:
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
...(省略)...
while 条件 2:
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
...(省略)...
处理条件 2
处理条件 1
while
嵌套应用:九九乘法表
代码展示:
i = 1
while i <= 9:
j=1
while j <= i:
print("%d*%d=%-2d " % (j, i, i*j), end='')
j += 1
print('\n')
i += 1