大大大大力无限 发表于 2023-4-7 10:55:53

python的循环嵌套问题

求助大神,这个代码运行起来为什么是打印八遍今天一定学8小时
day = 1
hour = 1
while day <= 7:
    while hour <= 8:
      print('今天一定学8小时')
      hour += 1
    day += 1

今天一定学8小时
今天一定学8小时
今天一定学8小时
今天一定学8小时
今天一定学8小时
今天一定学8小时
今天一定学8小时
今天一定学8小时

isdkz 发表于 2023-4-7 10:59:43

你的代码中存在一个问题:在内层循环结束后,hour的值没有被重置为1,

导致后续的外层循环再次执行内层循环时,hour的值已经超过8,因此内层循环不会再被执行。

你可以通过将hour的初始化放在外层循环内部来解决这个问题:

day = 1
while day <= 7:
    hour = 1
    while hour <= 8:
      print('今天一定学8小时')
      hour += 1
    day += 1

这样,对于每一天,内层循环都会执行8次,打印出“今天一定学8小时”。总共会打印出56次(7天 * 8小时)。
页: [1]
查看完整版本: python的循环嵌套问题