Python:如何将一年中的某日转换为日和月?

问题描述

例如:

一年中的某天:365

结果:

日: 31
月: 12

解决方法

与日期和时间相关的事物应始终由datetime包处理,以说明account年和类似的恶作剧。例如,2020年是a年。

"""calculate day and month from day of year"""
from datetime import datetime,timedelta

TOTAL_DAYS = 365
YEAR = 2020

startDate = datetime(year=YEAR,month=1,day=1)
daysToShift = TOTAL_DAYS - 1
endDate = startDate + timedelta(days=daysToShift)

month = endDate.month
day = endDate.day

print(f"Day {TOTAL_DAYS} corresponds to day {day} of month {month}.")

上面的代码输出为:

第365天对应于第12个月的第30天。

如果选择2019,则是第31天。

,

初始化值为12月31日的日期变量,并添加x天。 然后从结果中取出日期和月份