问题描述
所以我有一个 bigint 值,表示自公历中的 12:00:00 midnight,January 1,0001
以来经过的 100 纳秒间隔数。
一个例子是637564207744054251
。我在 Postgresql 中找到了这个和其他类似的值,我需要使用 Python 将其转换为 MM/DD/YYYY HH:MM:SS
格式。
谁能帮我弄清楚如何做到这一点?
解决方法
结合使用datetime
和timedelta
from datetime import datetime,timedelta
duration_ns = 637564207744054251 * 100 # number of 100-nanosecond intervals
duration = timedelta(microseconds=duration_ns / 1000)
start = datetime(1,1,0)
end = start + duration
end_str = end.strftime('%m/%d/%y %H:%M:%S')
print(end_str) # 05/12/21 12:52:54