Python 获取当前时间毫秒数

更新时间:2024-04-29 22:46:05   人气:3648
在编程实践中,获取高精度的时间戳对于诸如性能测试、精确计时器等功能的实现至关重要。在 Python 中,我们可以轻松地获取到包含毫秒级别的当前系统时间。

首先,在标准库 `time` 模块中提供了一个名为 `perf_counter()` 的函数,它可以返回一个精准度极高的浮点数表示的进程运行时间(从程序启动开始),并且这个值可以用来测量短时间段内的微小间隔,并且它的分辨率通常能达到纳秒级别或更高:

python

import time

# 获取当前时间(含毫秒)
current_time = round(time.perf_counter() * 1000)
print(current_time)


需要注意的是,上述方法虽然具有较高的精度但并非严格意义上的“绝对”时间(即自 Unix 纪元以来所经过的毫秒数)。若需得到这样的结果,则可使用 `datetime` 和 `timedelta` 进行转换操作:

python

from datetime import datetime, timedelta

# 获取带毫秒级的当前UTC时间
utc_now_millis = int((datetime.utcnow() - datetime(1970, 1, 1)) / timedelta(milliseconds=1))
print(utc_now_millis)

然而在某些场合下,你可能希望直接获得与操作系统时间和日期相关的毫秒数值,这时你可以利用 `time.time_ns()` 函数结合一些算术运算来达到目的:

python

import time

# 使用Unix纪元后的 nanoseconds 转换为 milliseconds
epoch_ms = (int(round(time.time_ns()/1e6)))
print(epoch_ms)

以上三种方式分别展示了如何通过不同途径在Python环境中准确高效地获取当前时刻的毫秒数,开发者可以根据实际应用场景和需求选择最合适的方法进行实践运用。