Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Số ngày trong tháng trong Python

Cho năm Y và tháng M, cần trả về số ngày của tháng đó trong năm cho trước. Ví dụ: Y=1992, M=7 cho 31; năm 2020, M=2 cho 29.

Để giải quyết:

  • Nếu m = 2:
    • Nếu y là năm nhuận, trả về 29, ngược lại 28
  • Tạo mảng [1, 3, 5, 7, 8, 10, 12]
  • Nếu m trong mảng, trả về 31, ngược lại 30

Ví dụ (Python)

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

Kết quả

29