Python中关于while循环语句嵌套用法运行原理的个人形象理解(一)

  (1)语句格式:

  在Python中,while循环语句嵌套基本格式如下:

453686f79c66436499ae3fcbd8e90fd3.jpg

 (2)运行机制:

以2个while循环语句嵌套为例。

看图说话:

  我们可以把一个while循环(满足循环条件)的过程看成:

  一个person绕着固定的环型圈道完整地run一趟,这个环叫while①

7d11dc80e6a241b89bc25329776d438e.jpg

   我们可以把两个while循环(均满足循环条件)的过程看成:

  一个person绕着固定的双环(大环包小环)型圈道完整地run一趟,小环叫while②

258e17ca51fe422f875446633daff0f6.jpg

   可以看出,person想要run完大环while①,首先就得跑完小环while②,然后才能继续跑完大环while①

  也就是说,Python中,要想完成外层while循环,内层while循环就得先完成,然后才能继续外层while循环。

    我们再看看小面一个Python的while循环嵌套的小例子:

155e9a22ad894757ac8d5cc23d0c7fe3.jpg

分析:用我们上面跑圈的原理去推理代码运行的结果。

  图中,我们定义了两个变量a和b,下面进入第一个外层while循环,满足其循环的条件是a≤2,因为我们一开始的a=1满足,所以外层while里的print()语句会输出AAAAA,然后变量a 会加上1,此时a=2,仍然满足循环条件。

  But,外层while先别着急循环,就像run 双环圈型圈道一样,你想把大环run完,那你就得先把小环run完。

  与之相似,我们先看内层while循环,内层while循环的条件是b ≤ 5,因为我们一开始的b=1满足条件,随之内层while循环里print()语句会输出B,然后b加1,b=2,仍然满足条件,还得循环,内层while循环一共进行5次,print()语句输出了5个B,第五次之后b=6,不满足条件了,循环结束。

  然后又回到外层循环,由于a=2满足条件,所以外层while里的print()语句会输出AAAAA,然后变量a 会加上1,此时a=3,不满足循环条件,就此所有循环结束。

下面我们来看看结果是怎么样的:

a8479967a056472ead6c1d690313db5e.jpg

 可以看出结果与我们的推理一致。

   以此类推,我们看看while三循环嵌套的运行是否符合上面的推理运行机制:

ffe79774be934ab595c1d29481150a3d.jpg

 根据前面得出的运行机制,我们可以推测上图的运行结果应该为:

   首先,最外层while循环满足条件, print()语句输出AAAAA, a加1,此时a=2,进入中间层while循环,满足条件,print()语句输出BBB, b加1,此时b=2,进入最内层while循环,满足条件,print()语句输出C, c加1,此时c=2,满足条件,最内层while循环继续进行,一共循环四次,输出四个C,最内层while循环结束。

    然后又返回到中间层while循环,由于此时b=2满足循环条件,print()语句输出BBB, b加1,此时b=3,又满足循环条件,print()语句输出BBB,,b加1,此时b=4,不满足条件,中间层while循环结束。

  然后返回最外层while循环,由于此时a=2满足循环条件,print()语句输出AAAAA, a加1,此时a=3不满足条件,最外层while循环结束。

分析结束,让我们来看看最终结果:

e3a5a0a4ae9d4d5a8333664d6e0cee00.jpg

结论:

   使用while循环语句嵌套,永远都是最内层的循环结束以后,再依次轮到上一层while循环进行,循环结束后又轮到上上一层,以此类推,直至所以循环结束。

  

  

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yuga...

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值