关于循环嵌套
day = 1hour = 1
while day <= 7:
while hour <= 8:
print('老子今天一定学习八个小时')
hour += 1
if hour > 1:
break
day += 1
这个代码打出的字符串为7个,而如果将if hour > 1:break删除,字符串仍为七个。这是为什么啊。 因为day大于7就不循环了 未修改前,每次进入内循环执行一次跳出,因为外层循环条件day小于等于7,所以进入7次内循环,共有七条消息打印
修改后,在day=1时进入内循环,内循环执行8次后hour=9终止,当再次判断内循环条件时因hour=9,所以内循环不再执行,直到程序结束,共有8条消息打印 break没意义吧
break之后又到了while day <= 7:
又进入了while hour <= 8:
又print()
我感觉没有意义 在第一次循环中,hour = 1,在第二个循环中在if hour > 1:前有一个hour += 1,此时hour = 2,所以break一定会执行,所以会通过第一个循环执行7遍,而将if hour > 1: break删除后,会执行第二个循环7遍,而后面hour = 9了,所以就不会进第二个循环了. 回忆。 发表于 2021-8-11 19:07
未修改前,每次进入内循环执行一次跳出,因为外层循环条件day小于等于7,所以进入7次内循环,共有七条消息 ...
谢谢大佬{:10_254:}
页:
[1]