如何将 100 纳秒 Gregorian bigint 值转换为 Python 中的日期时间?
How do I convert a 100 nanosecond Gregorian bigint value to a datetime in Python?
所以我有一个 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, 1, 0, 0, 0)
end = start + duration
end_str = end.strftime('%m/%d/%y %H:%M:%S')
print(end_str) # 05/12/21 12:52:54
所以我有一个 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, 1, 0, 0, 0)
end = start + duration
end_str = end.strftime('%m/%d/%y %H:%M:%S')
print(end_str) # 05/12/21 12:52:54