python 如何获取一年多少天,如何获取一年中某个月多少天

方法一:(比较聪明方法)
#某年天数
year_days = 366 if calendar.isleap(int(str(year_num))) else 365

#某年某一个月天数
month_days = calendar.monthrange(int(str(year_num)), int(str(month_num))[1]

方法二:(笨方法)

#获取某年一共多少天
def year_days_num(year):

    #这一年第一天和这一年最后一天
    startDay = str(year)+'-01-01'
    endDay = str(year)+'-12-31'

    #天数
    year_days_mum = (datetime.datetime.strptime(endDay, "%Y-%m-%d") - datetime.datetime.strptime(startDay, "%Y-%m-%d")).days +1

    print('{}年一共{}天'.format(year,year_days_mum))
    return year_days_mum

#获取某年某月一共多少天
def month_days_mum(year_days,year_month):
    #year_month = period对象  '2017-12'
    num = int(str(year_month).split('-')[1])
    if num in (1, 3, 5, 7, 8, 10, 12):
        month_days = 31
    elif num == 2:
        if year_days==366:  # 为闰年
            month_days=29
        else:
            month_days = 28
    else:
        month_days = 30
    return month_days
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值