是否有将范围(0,365)的整数转换为日期(dtype ='datetime64 [D]')的aby方法?例如: 0 - > 1 jan 1 - > 2 jan 。 。 31 - > 1 feb 。 。 364-> 31 dec将整数转换为Python中的日期
P.S:我不需要一年。仅限非闰年的日期和月份。
是否有将范围(0,365)的整数转换为日期(dtype ='datetime64 [D]')的aby方法?例如: 0 - > 1 jan 1 - > 2 jan 。 。 31 - > 1 feb 。 。 364-> 31 dec将整数转换为Python中的日期
P.S:我不需要一年。仅限非闰年的日期和月份。
如果你想映射是在一本字典,这是它会怎样看:
import datetime
In [35]: days = {}
In [36]: for i in range(0, 365):
...: days[i] = (datetime.datetime(2017, 1, 1) + datetime.timedelta(days=i)).strftime("%d %b")
...:
你会得到这样的:
In [37]: days
Out[37]:
{0: '01 Jan',
1: '02 Jan',
2: '03 Jan',
3: '04 Jan',
...
正如你所提到的,你需要一个非闰年的结果集,从而创建一个非闰年的日期时间对象,如“2015年”
from datetime import datetime, timedelta
for day_count in range(0, 365) :
curr_date_object = datetime.strptime('2015-01-01', '%Y-%m-%d') + timedelta(days=day_count)
print(curr_date_object.strftime("%d %b"))
这将返回你想要的结果。
01 Jan
02 Jan
03 Jan
04 Jan
05 Jan
...
相对于目前一年? (那么'60'应该映射到2月29日还是3月1日?) – L3viathan