我想转换以下时间戳-“ 1571299045371875”,以微秒为单位
日期格式为“ 2019-10-17T07:57:35.333333Z”。
我试过使用:
date_time = datetime.utcfromtimestamp(timestamp)
st = date_time.strftime("%Y-%m-%dT%H:%M:%S.%fZ")
但这在尝试转换时间戳时给了我“ [Errno 22]无效的参数”。转换毫秒的时间戳可以很好地工作,但是我不能失去精度。
有什么办法可以转换微秒时间戳?
将微秒转换为秒,然后可用于fromtimestamp()
将UNIX时代以来的秒转换为日期时间对象。
import datetime
timestamp_microseconds = 1571299045371875
timestamp_seconds = timestamp_microseconds/1000000
dobj = datetime.datetime.fromtimestamp(timestamp_seconds)
print(dobj.isoformat())
datetime.datetime(2019、10、17、16、57、25、371875)'2019-10-17T16:57:25.371875'
正如MrFuppes所提到的,这将基于计算机的本地时间返回datetime对象。
从文档中获取:https : //docs.python.org/3/library/datetime.html#datetime.datetime.fromtimestamp
datetime.fromtimestamp() 返回与POSIX时间戳相对应的本地日期和时间,例如time.time()返回的日期和时间。如果可选参数“ tz ”为None或未指定,则时间戳将转换为平台的本地日期和时间,并且返回的datetime对象是天真的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句