作者skyleona (多益爆了!)
看板Python
標題[問題] 迴圈問題
時間Sun Feb 20 23:43:07 2022
大家好,最近剛學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月之後的月份
請各位大大解惑,謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.200.12.80 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1645371789.A.BFB.html
※ 編輯: skyleona (1.200.12.80 臺灣), 02/20/2022 23:45:53
1F:→ papple23g: for迴圈會自動遞增month變數 所以month=1和+=1都沒有作 02/20 23:53
2F:→ papple23g: 用 可以拿掉 02/20 23:53
※ 編輯: skyleona (1.200.12.80 臺灣), 02/21/2022 00:07:55
3F:→ skyleona: p大,我拿掉了,不過月份只要不是輸入1就會出錯 02/21 00:09
4F:推 s0914714: 不是出錯 你試著單獨使用range就知道為什麼 02/21 00:10
5F:→ a367560: 你沒叫內圈產生6以前的數字 外圈到下一圈從頭自然是6開始 02/21 00:49
6F:推 timsheu: 是你認定year叫做年跟month叫做月,但python並不知道 02/21 10:08
7F:→ timsheu: 它只認為是單純的兩個迴圈,所以上下限是多少就是多少 02/21 10:09
8F:→ timsheu: 你把年改成0-10、月改成0-20,就應該看得出錯在哪 02/21 10:10
9F:推 bdbddbdb: 輸入6就等同for month in range(6,13),所以就只會出現6 02/24 22:30
10F:→ bdbddbdb: 月之後的。 02/24 22:30