我有时间用J2000格式.中午后几秒钟,在1-1-2000,我想把它转换成一个格式为年份月日hour:min:sec.millisec格式的数组中的UTC时间。在AstroPy中是否有一些函数或类似的功能来进行转换?
输入:J2000中的时间: 559889620.293秒
预期产出:世界协调时间: 2017-09-28 16:53:40.293
发布于 2017-09-29 16:20:06
如果你想使用astropy
,你可以使用astropy.time
>>> from astropy.time import TimeDelta, Time
>>> from astropy import units as u
>>> (Time(2000, format='jyear') + TimeDelta(559889620.293*u.s)).iso
'2017-09-28 16:53:35.293'
如果您不想记住朱利安的基准日期(1.1.2000的中午),那么Time(2000, format='jyear')
是一个很好的选择。
发布于 2017-09-29 16:08:00
偏移量是常量的,所以您只需添加它:
>>> OFFSET = datetime(2000,1,1,12) - datetime(1970,1,1)
>>> datetime.utcfromtimestamp(559889620.293) + OFFSET
datetime.datetime(2017, 9, 28, 16, 53, 40, 293000)
发布于 2017-09-29 16:08:36
您可以简单地将一个timedelta
添加到基本datetime
中。
import datetime
datetime.datetime(2000, 1, 1, 12, 0) + datetime.timedelta(seconds=559889620.293)
返回:
datetime.datetime(2017, 9, 28, 16, 53, 40, 293000)
https://stackoverflow.com/questions/46492109
复制相似问题