Computer >> Máy Tính >  >> Lập trình >> Python

Số ngày trong tháng bằng Python


Giả sử chúng ta có một năm Y và một tháng M, chúng ta phải trả về số ngày của tháng đó cho năm đã cho. Vì vậy, nếu Y =1992 và M =7, thì kết quả sẽ là 31, nếu năm 2020 và M =2, thì kết quả là 29.

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • nếu m =2, thì
    • nếu y là năm nhuận thì trả về 29, ngược lại là 28
  • tạo một mảng với các phần tử [1,3,5,7,8,10,12]
  • nếu m có trong danh sách, thì trả về 31, ngược lại, trả về 30.

Ví dụ (Python)

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

class Solution(object):
   def numberOfDays(self, y, m):
      leap = 0
      if y% 400 == 0:
         leap = 1
      elif y % 100 == 0:
         leap = 0
      elif y% 4 == 0:
         leap = 1
      if m==2:
         return 28 + leap
      list = [1,3,5,7,8,10,12]
      if m in list:
         return 31
      return 30
ob1 = Solution()
print(ob1.numberOfDays(2020, 2))

Đầu vào

2020
2

Đầu ra

29