Ign*_*ams 71
datetime.datetime(year, 1, 1) + datetime.timedelta(days - 1)
Run Code Online (Sandbox Code Playgroud)
Sil*_*ost 22
>>> import datetime
>>> datetime.datetime.strptime('2010 120', '%Y %j')
datetime.datetime(2010, 4, 30, 0, 0)
>>> _.strftime('%d/%m/%Y')
'30/04/2010'
Run Code Online (Sandbox Code Playgroud)
在toordinal()与fromordinal()该功能date类可用于:
from datetime import date
date.fromordinal(date(year, 1, 1).toordinal() + days - 1)
Run Code Online (Sandbox Code Playgroud)
因为现在它很常见,一个pandas选项,使用pd.to_datetime指定的单位和原点:
import pandas as pd
day, year = 21, 2021
print(pd.to_datetime(day-1, unit='D', origin=str(year)))
# 2021-01-21 00:00:00
Run Code Online (Sandbox Code Playgroud)