python中嵌套循环的运行原理_python中while嵌套循环的执行流程问题?
1.
while x < 3:
print("x的当前值为%d" % x)
y = 0
while y < 3:
print("y的当前值为%d" % y)
print("内层循环")
y += 1
print("y的累加值为%d" % y)
print("外层循环")
x += 1
print("x的累加值为%d" % x)
执行结果如下: (嵌套的内循环计数器在外循环内部)
第1次完整循环
x当前值 = 0
y当前值 = 0
内层循环
y累加值 = 1
y当前值 = 1
内层循环
y累加值 = 2
y当前值 = 2
内层循环
y累加值 = 3
外层循环
x累加值 = 1
第2次完整循环
x当前值 = 1
y当前值 = 0
内层循环
y累加值 = 1
y当前值 = 1
内层循环
y累加值 = 2
y当前值 = 2
内层循环
y累加值 = 3
外层循环
x累加值 = 2
第3次完整循环
x当前值 = 2
y当前值 = 0
内层循环
y累加值 = 1
y当前值 = 1
内层循环
y累加值 = 2
y当前值 = 2
内层循环
y累加值 = 3
外层循环
x累加值 = 3
不再满足条件
2.
x = 0
y = 0
while x < 3:
print("x当前值 = %d" % x)
while y < 3:
print("y当前值 = %d" % y)
print("内层循环")
y += 1
print("y累加值 = %d" % y)
print("外层循环")
x += 1
print("x累加值 = %d" % x)
执行结果如下: (嵌套的内循环计数器在外面)
第1次完整循环
x当前值 = 0
y当前值 = 0
内层循环
y累加值 = 1
y当前值 = 1
内层循环
y累加值 = 2
y当前值 = 2
内层循环
y累加值 = 3
外层循环
x累加值 = 1
第2次完整循环
x当前值 = 1
外层循环
x累加值 = 2
第3次完整循环
x当前值 = 2
外层循环
x累加值 = 3
为什么会出现这种差异呢? 看了视频, 老师只告诉这种差异存在, 自己也分析了执行流程, 但那是从结果分析原因, 总觉得对其中原理有点迷糊.
有什么更明确清晰的理解方法吗? 像python代码从上到下, 从左到右, LEGB原则?
python中嵌套循环的运行原理_python中while嵌套循环的执行流程问题?相关推荐
- python中map函数运行原理_Python中map函数的解释和可视化
先重温一下迭代(Iteration).迭代器对象(iterable).迭代器(iterator )的概念: Iteration是计算机科学的通用术语,它是指对一组元素执行一项操作,一次执行一个元素.一 ...
- Python基础_第3章_Python中的循环结构
Python基础_第3章_Python中的循环结构 文章目录 Python基础_第3章_Python中的循环结构 Python中的循环结构 一.回顾分支练习题 1.判断是否为一个合法三角形 2.求世界 ...
- Python基础_第5章_Python中的数据序列
Python基础_第5章_Python中的数据序列 文章目录 Python基础_第5章_Python中的数据序列 Python中的数据序列 一.字典--Python中的==查询==神器 1.为什么需要 ...
- python中迭代器的实现原理_Python 进阶应用教程
Python 中的迭代器实现原理 在数学中,集合表示由一个或多个确定的元素所构成的整体.在 Python 中,列表.元组.集合可以用于表示数学中的集合. 例如,分别使用列表.元组.集合表示了一个包含 ...
- python if name main 的作用_Python中if __name__ == '__main__':的作用和原理
if __name__ == '__main__':的作用 一个python文件通常有两种使用方法,第一是作为脚本直接执行,第二是 import 到其他的 python 脚本中被调用(模块重用)执行. ...
- python中的self怎么理解_python中的self理解
前言 先介绍下类和实例 面向对象最重要的概念就是类(class)和实例(instance),类时抽象的模板,比如学生这个抽象的事物,可以用一个student类来表示.而实例时根据类创建出来的一个个具体 ...
- python深复制与浅复制_Python中的深拷贝和浅拷贝详解
要说清楚Python中的深浅拷贝,需要搞清楚下面一系列概念: 变量-引用-对象(可变对象,不可变对象)-切片-拷贝(浅拷贝,深拷贝) [变量-对象-引用] 在Python中一切都是对象,比如说:3, ...
- python if写在return 后面_python中return如何写
python中return的用法 1.return语句就是把执行结果返回到调用的地方,并把程序的控制权一起返回 程序运行到所遇到的第一个return即返回(退出def块),不会再运行第二个return ...
- python中格式化字符串的作用_python中字符串格式化的意义(化妆)
格式 描述 %%百分号标记 #就是输出一个% %c字符及其ASCII码 %s字符串 %d有符号整数(十进制) %u无符号整数(十进制) %o无符号整数(八进制) %x无符号整数(十六进制) %X无符号 ...
最新文章
- angularjs 学习笔记 简单基础
- 安装VMware Workstation提示the msi failed的解决办法
- React 组件之间传递参数
- VisualSVN Server2.5服务器迁移
- ZOJ 3781 最短路(想法好题目)
- java浮点整型数组_如何将C风格的二进制浮点数组读入Java?
- JavaScript学习随记——数组二
- centOS docker容器的安装
- mysql 几级缓存_Mysql中一级缓存二级缓存区别
- 粉刷匠(bzoj 1296)
- Varnish 缓存服务器配置
- 安装版mysql数据库data在_MySQL 5.7版本的安装使用详细教程+更改数据库data的存储路径...
- 如何看待家长培训课?
- CDA学习之Pandas - 常用函数和75个高频操作
- IEEE802.11信道PDP与频谱分布
- 请不要在Java项目中乱打印日志了,这才是正确姿势,非常实用!
- 轮播图功能的全实现(自动播放、小点点、按住停止播放、放手后开始播放...)
- 《微机原理与接口技术》复习参考资料,期末考试和专接本适用
- Sentinel demo
- OCJP题库1Z0-851(21/30)