这是一个初学者问题,但我找不到一个好的答案。
我有:
self.date = ( self.date + 1 ) % 31
所以结果从0 1 2 3开始......并以29 30 0 1结束....
如何将它移动到1 2 3 4开始并导致30 31 1 2 3 ...尽可能清晰的语法?
答案 0 :(得分:1)
添加一个:
self.date = ((self.date + 1) % 31) + 1
答案 1 :(得分:1)
self.date = (self.date % 31) + 1
我认为这就是你的意思。
编辑:我看到你对另一个答案的评论,这里是你正在做的事情的解释: (self.date % 31)
表示取日期值并在除以31时找到余数(您知道)。如果您使用self.date +1 % 31
,那么从date = 0
开始,您将获得1,2,3..30。在date=30
时,结果为30+1 % 31
或31 % 31
为0。
如果您添加1后,在date=30
,您将30 % 31
,仍然会给您30
,然后+1给您想要的30,31,1。