我正在尝试以比秒更好的分辨率获得 UTC posix 时间戳(毫秒是可以接受的,但微秒会更好)。我需要它作为不相关的外部计数器/定时器硬件的同步,该硬件在上电时从 0 开始以纳秒运行。
这意味着我想要一些“绝对”时间来拥有一对 (
my_absolute_utc_timestamp, some_counter_ns
) 以便能够解释后续的计数器/计时器值。
我需要至少毫秒精度。
time.time_ns()
time.mktime(time.gmtime())
>>> time.mktime(time.gmtime()) - datetime.datetime.utcnow().timestamp()
3599.555135011673
我最终将
int(datetime.datetime.utcnow() * 1000000)
设置为“utc_microseconds”,它可以工作,但是:
有没有更好的方法在Python中获取微秒或毫秒UTC posix时间戳? (最好使用标准Python库)
我正在使用 python 3.10(并且无法升级)
我希望这能在 3.10 中工作,尽管我无法检查
import datetime
dt_now = datetime.datetime.now(datetime.timezone.utc)
print(dt_now.strftime("%Y-%m-%d %H:%M:%S.%f"))
输出:
2024-04-30 11:17:48.246701