打开《Python入门与实战》_一步步学会Python_8.4.2 案例解析
154
2023-10-19
【摘要】 本书摘自《Python3快速入门与实战》一书中第2章,第9节,由肖冠宇、杨捷等编著。
2.9.2 while 循环嵌套
while循环嵌套就是在while循环中继续使用 while循环,使用的 while循环数量没有 限制。
例2-36 while循环嵌套的使用,打印三角形。
要求是:从上到下,下一行比上一行多两个*,在行开头下一行比上一行少1个空格。
以打印4行为例,图2-2为代码逻辑分析图,分析如何用代码实现。为了方便,在分析 的过程中给每行标记一个行号,从第1行开始, 一共4行。
规律1:每行打印*的个数:第1行1个星,第2行3个星,第3行5个星,第4行7 个星。每行打印星号的个数有个规律,即每行打印的星号都是奇数个,下一行比上一行多两 个星,结合行号找出的规律是2乘以行号再减1。
规律2:每行第1个星号距离左侧的空格数,第1行3个空格,第2行两个空格,第3 行1个空格,第4行0个空格。可以看出一个规律,就是每行开头的第1个星号距离左侧的 空格数与行号的关系是打印的总行数减去行号。
有了这两个打印三角形的规律,我们就可以开始写代码实现(源代码位置: chapter02/2.9 while 循环.py)。
案例代码如下:
i=1# 用于控制行号
n=4# 正三角形共打印多少行
#外层循环控制打印图形的总行数
while i<=n:
#打印第一个星号距离左侧的空格数
print(""*(n-i),end="")#无换行输出
#开始打印每行的星号,星号的个数=2*i-1个
j=1
whilej<=2*i- 1:
print("*",end="")#无换行输出
j+=1
print("")#打印一行换行
i+=1
运行结果如下:
*
***
*****
*******
2.9.3 break 跳出整个 while 循环
在执行循环过程中,有时需要对某些条件进行判断,当条件满足时,就要跳出整个循 环,结束循环继续执行循环体之后的代码。此时就要用到break关键字。
例2- 37 打印1到20的偶数,当遇到10的整数倍数字时,结束整个循环(源代码位 置 :chapter02/2.9 while循环.py)。
案例代码如下:
print("--------start--")
i=1
while i<=20:
#能被2整除表示是偶数
ifi%2=0:
ifi% 10=0:
#遇到10的整数倍数字,跳出整个循环
break
print(i)
i+=1
#循环结束后,继续执行下面的代码
print("------end----—")
运行结果如下:
-start--------
2
4
6
8
-end----
注意:在循环中执行 break 后, break 之后的代码和剩余循环都不会再执行,结束整 个循环。
2.9.4 continue 跳出当次 while 循环
continue 关键字用于跳出它所在的当次循环,如果后面还有循环未执行,则继续执行后 面的循环。注意区分 continue关键字与break关键字跳出循环的不同。
例2-38 打印1到20的偶数,不打印10的整数倍偶数(源代码位置: chapter02/2.9 while 循环.py)。
案例代码如下:
print("--------start------")
i=1
while i<=20:
i+=1# 要放在前面,如果放在最后,则执行完continue
ifi%2=0:
ifi% 10=0:
#跳出本次循环,不打印10的整数倍偶数,后边的偶数继续打印
continue
print(i)
print("---end- ")
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~