如何理解python中while的循环嵌套
首先我给大家分享一个代码:
row = 1
while row <= 5:
col = 1
while col <= row:
print("*" end="")
col += 1
print("")
row += 1
上面的这个代码运行完之后,打印出来的是这样的:
*
**
***
****
*****
我当时学while嵌套循环时,不理解上面的这个代码全部运行完之后的结果:为什么能够在打印第n行时能够在第n行打印n个*。
后来我发现原来是我遗漏了一个非常重要的条件,从而导致我不理解以上代码的结果,那就是:我定义的col计数变量是在第一个while里面,而不是在第一个while外面。
首先,当里面的while每运行完一次之后,col的值都理所当然的加上一个1(在这里我令加上1之后的col的值为col1),导致里面的while想要再次运行第二遍的时候却因为col1的值大于row的值,而使运行中的代码直接跳过里面的while循环,而直接运行后序的代码,比如运行 print("") 和 row += 1 (在这里我令加上1之后的row的值为row1)。
然后,row被重新附值完之后,代码又从外面的while开始从头运行。当row1被判断为小于等于5之后,运行下一行代码col = 1,这个时候原本被附过值的col(col = col1)又再一次被重新附值为1,然后才再次运行里面的while,而不是col = col1时运行里面的while。
以上就是我对于 python中while循环嵌套 的理解与解释,希望能对大家学习python有所帮助。如果我说的有不严谨或错误的地方希望大家能够给我指出来,谢谢🙏