Python中的年度日期

假设我们有一个日期,格式为“ YYYY-MM-DD”。我们必须返回一年中的天数。因此,如果日期为“ 2019-02-10”,则这是一年的第41天。

为了解决这个问题,我们将遵循以下步骤-

  • 假设D是一个日期计数数组,例如[0,31,28,31,30,31,30,31,31,30,31,30,31]

  • 将日期转换成年,月和日列表

  • 如果年份是leap年,则设置日期D [2] = 29

  • 将天数加起来直到月份mm – 1.,然后是天数。

示例

让我们看下面的实现以更好地理解-

class Solution(object):
   def dayOfYear(self, date):
      days = [0,31,28,31,30,31,30,31,31,30,31,30,31]
      d = list(map(int,date.split("-")))
      if d[0] % 400 == 0:
         days[2]+=1
      elif d[0]%4 == 0 and d[0]%100!=0:
         days[2]+=1
      for i in range(1,len(days)):
         days[i]+=days[i-1]
      return days[d[1]-1]+d[2]
ob1 = Solution()print(ob1.dayOfYear("2019-02-10"))

输入值

"2019-02-10"

输出结果

41