最近,我遇到了一种以前从未见过的新时间戳格式,称为“ Microsoft时间戳”,它表示自1899年12月31日以来的几天。 我试图在网上搜索以查看python中是否有任何方法可以将该格式转换为ISO 8601,反之亦然,但是没有发现任何有用的方法。
即根据{{3}} 43981.715520833指2020-05-30T17:10:21 + 00:00
答案 0 :(得分:0)
您可以使用datetime模块编写自己的函数:
from datetime import datetime, timedelta
def microsoft_to_iso8601(microsoft):
base_date = datetime(1899, 12, 31)
ret_date = base_date + timedelta(days=microsoft)
return ret_date.isoformat()
print(microsoft_to_iso8601(43981.7155208333350))
# returns 2020-05-31T17:10:21
上面的函数创建一个datetime.datetime
对象base_date
,该对象存储“ Microsoft时间戳记”的基本日期:1899年12月31日。
ret_date
是第一个日期加上自“ Microsoft时间戳记”表示的日期以来经过的天数。该函数返回将此日期转换为ISO-8601字符串。