特定の年の特定の月を入力して、その月が何日あるかを確認します

要件: 特定の年の特定の月を入力して、その月が何日あるかを確認します。

分析:
1、3、5、7、8、10、12: 31 日4、6、9、11
: 30 日
2: 閏年: 29 日、平年: 28 日コア:
入力された年が西暦である
かどうかを判断します。うるう年または通常の年1: 年 %400 == 0 うるう年 2000
ケース 2: 年 %4 == 0 および年 %100 != 0 1900 はうるう年ではありません

コード:

'''方法一'''
if __name__ == '__main__':
    year = int(input('请输入年份:'))
    month = int(input('请输入月份:'))
    # 判断
    if month in [1, 3, 5, 7, 8, 10, 12]:
        days = 31
    elif month in [4, 6, 9, 11]:
        days = 30
    else:
        # 处理2月份
        if year % 400 == 0 or (year % 4 == 0 and year % 100 != 0):
            days = 29
        else:
            days = 28
    # 输出
    print('%d年%d月:%d天' % (year, month, days))

'''方法二'''
year = int(input('请输入年份:'))
    month = int(input('请输入月份:'))
    # 定义一个list
    days_list = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
    # 判断是否是闰年
    if (month == 2) and (year % 400 == 0 or (year % 4 == 0 and year % 100 != 0)):
        print('%d年%d月:%d天' % (year, month, days_list[month - 1] + 1))
    else:
        print('%d年%d月:%d天' % (year, month, days_list[month - 1]))

おすすめ

転載: blog.csdn.net/weixin_49981930/article/details/128680085