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行*进行换行显示;

这次的练习例子稍有难度,对于需求样式的分析要明确,按照需求步骤拆分最后使用循环嵌套的方式,完成处理。

posted @ 2020-03-26 16:08  凶狠的木头哥  阅读(137)  评论(0编辑  收藏  举报