Python小记8
接https://www.cnblogs.com/airlinp/p/12572778.html
8.7 循环嵌套
while循环嵌套:while中还有while;
语法格式:
while 条件1: 条件满足,执行操作1 条件满足,执行操作2 … while 条件2: 条件满足,执行操作1 条件满足,执行操作2 … 处理条件2 处理条件1
有上述代码可知:
可以看出,while循环嵌套与前面章节中的if嵌套形式很类似,while中包含while;
代码前的缩进在python中,非常的重要,缩进的对齐可以决定代码完全不同的执行效果;
*格式输出练习:
*
**
***
****
*****
按照该样式,将*输出
分析需求,样式一共有5行,每行输出的*数量不同,与行号数量对应,即1行1个,2行2个…;
所以至少要使用2个计数器,一个用来行计数,一个用来每行*个数的计数;
# * # ** # *** # **** # ***** # 按照上述格式,进行样式输出 # 定义行计数器 i = 1 # 循环条件5行 while i <= 5: # 定义列计数器 j=1 # 列循环条件 while j <= i: # *拼接输出 print("*", end="") j+=1 # 逐行自动换行输出 print("") i += 1
由上述代码可知:
定义i为行计数器,定义j为每行*个数的计数器;
while大循环体,完成5行输出工作;
while小循环体,完成每行*个数的输出;
2个print输出函数完成*拼接和自动换行;
由上图可知:
- while小循环体内,j<=i表达含义为,每一行*的个数不大于行号,即第1行1个*,*的数量不大于1行,第2行2个*,*的数量不大于2行;
- while小循环体内,print函数中,有end=""语法,此为延伸用法,代表意义:Python中print函数在运行输出后,会默认进行换行,如果不希望自动换行则加入end=语法,其中=后的内容为与后面内容的拼接内容,按照上图end=""代表不需要任何内容进行连接,如果end="-",代表使用“-”横杠与后面内容连接,代码运行效果展示如下:可以看出每个*之间使用了“-”进行连接
- ;
- while大循环体最后的print函数进行了空输出,正如上一点所述,print函数完成运行后会自动换行,这样就可以把这5行*进行换行显示;
这次的练习例子稍有难度,对于需求样式的分析要明确,按照需求步骤拆分最后使用循环嵌套的方式,完成处理。