[问题] 请教判断月份回传布林值问题

楼主: 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