目录
1.循环嵌套
2.break和continue
1. 循环嵌套
• Python 语言允许在一个循环体里面嵌入另一个循环。
• 语法
while 表达式:
while 表达式:
代码块
代码块
for 变量 in 循环规则:
for 变量 in 循环规则:
代码块
代码块
例1:答应出正方、三角、倒三角的由*构成的矩阵
# 目标:
# *****
# *****
# *****
# *****
# *****
#外曾循环控制行数
i=0
while i<5:
#在内层创建循环-->控制列数/宽度(一行有几个*)
j = 0 #!!!初始值在循环内部标注
while j<5: #控制宽度的条件
print('*',end='')
j +=1
print()
i+=1
#目标控制*形成三角
# * i=0 j<1
# ** i=1 j<2
# ***
# ****
# ***** i=4 j<5
i=0
while i<5:
j=0
while j<i+1:
print('*',end='')
j+=1
print()
i+=1
#目标控制*形成倒三角
# ***** i=0 j<5
# **** i=1 j<4
# ***
# **
# * i=4 j<1
i=0
while i<5:
j=0
while j<5-i:
print('*',end='')
j+=1
print()
i+=1
例2:打印九九乘法表
#目标:
# 1*1=1
# 2*1=2 2*2=4
# 3*1=3 3*2=6 3*3=9
# 4*1=4 4*2=8 4*3=12 4*4=16
# 5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
# 6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
# 7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
# 8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
# 9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
#控制高度:变量变化条件放到print前
i=0
while i<9:
i+=1
j=0
while j<i: #这里不用写j<i+1因为i在之前已经加过1
j+=1
print(f'{i}*{j}={i*j}',end=' ')
print()
2. break和continue
• break 可以用来立即退出当前循环,包括else语句
# 结果:1
i = 0
while i < 6:
i += 1
if i == 2:
break
print(i)
else:
print('hahaha')
• continue 用来跳过当初循环
i = 0
while i < 6:
i += 1
if i == 2:
continue
print(i)
else:
print('hahaha')
# 结果
# 1
# 3
# 4
# 5
# 6
# hahaha
例子:
# 给用户9次机会猜1 - 10个数字。无论用户怎么猜都猜不对
# 1 2 3 4 5 6 7 8 9 10 9次机会
# 思路:1.先拿到用户猜过的数字 2 3 4 5 6 7 8 9 10
# 2.随机一个数字去和用户猜过的数字做比对 如果随机的这个数字没有出现在用户猜过的数字当中。那么这个数字就是最终大答案
import random # 随机数的模块 内置模块 Python自带的
lst = [] # 用来添加用户猜过的数字
i = 0
while i < 9:
number = int(input('请输入一个数字:'))
lst.append(number) # 把用户猜过的数字放到列表当中
print('猜错啦!')
i += 1
while True:
number_x = random.randint(1,10) # 1 <= number_x <= 10
if number_x in lst:
continue
else:
break
print('正确的号码是:',number_x)