[問題] 請教判斷月份回傳布林值問題

作者: truestone (小真)   2019-05-22 15:21:00
我是python新手,請各位大大多多指教!
我有一個input是讓人選擇a月~b月,例如:a=2,b=4,得到(2,3,4)。
但今天有可能出現a=11,b=3,得到(11,12,1,2,3),如果這結果叫做Months。
我想要得到一個時間序列 T=[
datetime(2019,11,1,0,0),datetime(2019,12,1,0,0),
datetime(2020,1,1,0,0),datetime(2020,2,1,0,0),datetime(2020,3,1,0,0)]
所以我希望有一個f判斷式可以幫助我去迴圈M時,
可以依序丟出(False,False,True,True,True),
當f=False時,T.append(datetime(year, Months, 1))
當f=True時,T.append(datetime(year + 1, Months, 1))
我現在卡在不知道該怎麼寫出這個判斷式f.....
可以請前輩指定迷津一下嗎?謝謝!!!
作者: TitanEric (泰坦)   2019-05-22 15:36:00
為什麼11 12月要用false 其他是true?
作者: truestone (小真)   2019-05-22 16:47:00
YA~我做出來了!用了index去抓位置就可以同時有Months
作者: adrianshum (Alien)   2019-05-23 09:28:00
搞得太複雜了吧。我的話會乾脆吧11..3 轉化成11..15,然後每個對應的date 就單純是 (year + (i+1)/12, (i+1) %12, 1)手快寫錯了:年是 year + (i-1)/12, 月份是 (i-1)%12+1t = [ datetime(year+(i-1)//2, (i-1)%12+1, 1) for iin range(a, b if b>=a else b+12)]

Links booklink

Contact Us: admin [ a t ] ucptt.com