Python 中的年中天


假設我們有一個格式為“YYYY-MM-DD”的日期。我們必須返回該年的天數。因此,如果日期是“2019-02-10”,那麼這是該年的第 41 天。

為了解決這個問題,我們將按照以下步驟進行操作 -

  • 假設 D 是一個天數陣列,例如 [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
  • 將日期轉換為年、月和日的列表
  • 如果該年是閏年,則將日期 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

更新於: 2020 年 4 月 29 日

3K+ 瀏覽

開啟你的事業

完成課程,獲得認證

開始
廣告