1.while循环的基础语法

i = 0while i < 100:print("小美,我喜欢你")i += 1
  1. while的条件需得到布尔类型,True表示继续循环,False表示结束循环
  2. 需要设置循环终止的条件,如i += 1配合 i < 100,就能确保100次后停止,否则将无限循环
  3. 空格缩进和if判断一样,都需要设置

2.while循环的基础案例

设置一个范围1-100的随机整数变量,通过while循环,配合input语句,判断输入的数字是否等于随机数

无限次机会,直到猜中为止
每一次猜不中,会提示大了或小了
猜完数字后,提示猜了几次

提示:
无限次机会,终止条件不适合用数字累加来判断
可以考虑布尔类型本身(True or False)
需要提示几次猜中,就需要提供数字累加功能
随机数可以使用:

# 获取范围在1-100的随机数字import randomnum = random.randint(1, 100)# 定义一个变量,记录总共猜测了多少次count = 0# 通过一个布尔类型的变量,做循环是否继续的标记flag = Truewhile flag:guess_num = int(input("请输入你猜测的数字:"))count += 1if guess_num == num:print("猜中了")# 设置为False就是终止循环的条件flag = Falseelse:if guess_num > num:print("你猜的大了")else:print("你猜的小了")print(f"你总共猜测了{count}次")

3.while循环的嵌套应用

# 外层:表白100天的控制# 内层:每天的表白都送10只玫瑰花的控制i = 1while i <= 100:print(f"今天是第{i}天,准备表白.....")# 内层循环的控制变量j = 1while j <= 10:print(f"送给小美第{j}只玫瑰花")j += 1print("小美,我喜欢你")i += 1print(f"坚持到第{i - 1}天,表白成功")

同判断语句的嵌套一样,循环语句的嵌套,要注意空格缩进。
基于空格缩进来决定层次关系
注意条件的设置,避免出现无限循环(除非真的需要无限循环)

4.while循环的嵌套案例

案例-打印九九乘法表
通过while循环,输出如下九九乘法表内容

# 定义外层循环的控制变量i = 1while i <= 9:# 定义内层循环的控制变量j = 1while j <= i:# 内层循环的print语句,不要换行,通过\t制表符进行对齐print(f"{j} * {i} = {j * i}\t", end='')j += 1i += 1print() # print空内容,就是输出一个换行

5.for循环的基础语法

除了while循环语句外,Python同样提供了for循环语句。
两者能完成的功能基本差不多,但仍有一些区别:
while循环的循环条件是自定义的,自行控制循环条件
for循环是一种”轮询”机制,是对一批内容进行”逐个处理”

name = "itheima"for x in name:# 将name的内容,挨个取出赋予x临时变量# 就可以在循环体内对x进行处理print(x)

6.for循环的嵌套应用

# 坚持表白100天,每天都送10朵花# rangei = 0for i in range(1, 101):print(f"今天是向小美表白的第{i}天,加油坚持。")# 写内层的循环了for j in range(1, 11):print(f"给小美送的第{j}朵玫瑰花")print("小美我喜欢你")print(f"第{i}天,表白成功")

7.循环中断 :break和continue

break关键字同样只可以控制:它所在的循环永久中断
break只能控制左图编号1的循环对编号2的循环,无影响
continue关键字只可以控制:它所在的循环临时中断
continue只能控制左图编号1的for循环对编号2的for循环,无影响

  1. continue的作用是:
    中断所在循环的当次执行,直接进入下一次
  2. break的作用是:
    直接结束所在的循环
  3. 注意事项:
    continue和break,在for和while循环中作用一致
    在嵌套循环中,只能作用在所在的循环上,无法对上层循环起作用