[问题] 循环问题

楼主: skyleona (多益爆了!)   2022-02-20 23:43:07
大家好,最近刚学python有循环问题想请教
用循环方式去依序将年份及月份列出来,月份设定为1时,输出正常:
  for year in range(2000,2020):
for month in range(1,13):
print(str(year) + '/' + str(month) )
但是如果输入区间,就会出错,ex:2018/6~2019/12,就2019年只会列出6月之后的月份
 请各位大大解惑,谢谢
作者: papple23g (逆道者)   2022-02-20 23:53:00
for循环会自动递增month变量 所以month=1和+=1都没有作用 可以拿掉
楼主: skyleona (多益爆了!)   2022-02-21 00:09:00
p大,我拿掉了,不过月份只要不是输入1就会出错
作者: s0914714 (YA)   2022-02-21 00:10:00
不是出错 你试着单独使用range就知道为什么
作者: a367560 (欸参陆柒)   2022-02-21 00:49:00
你没叫内圈产生6以前的数字 外圈到下一圈从头自然是6开始
作者: timsheu (为道日损)   2022-02-21 10:08:00
是你认定year叫做年跟month叫做月,但python并不知道它只认为是单纯的两个循环,所以上下限是多少就是多少你把年改成0-10、月改成0-20,就应该看得出错在哪
作者: bdbddbdb (金某聊)   2022-02-24 22:30:00
输入6就等同for month in range(6,13),所以就只会出现6月之后的。

Links booklink

Contact Us: admin [ a t ] ucptt.com