
python 如何获取毫秒级系统时间
用户关注问题
如何在Python中精确获取当前时间到毫秒?
我需要在Python程序中获取当前时间,并且要求精确到毫秒,该如何实现?
使用datetime模块获取毫秒级时间
可以通过datetime模块中的datetime.now()方法获取当前时间,然后使用strftime配合微秒字段,或者直接访问microsecond属性除以1000得到毫秒数。例如:
from datetime import datetime
now = datetime.now()
milliseconds = int(now.microsecond / 1000)
print(f'Time: {now.strftime("%H:%M:%S")}.{milliseconds}')
Python中获取时间戳时,怎么获得毫秒精度?
使用time.time()获取的时间戳默认是秒,如何调整代码让时间戳包含毫秒信息?
将时间戳乘以1000以获取毫秒
time.time()返回的是自Unix纪元以来的秒数,包含小数部分代表秒的小数部分。可以将其乘以1000并转换为整数来获得毫秒级时间戳。
示例代码:
import time
timestamp_ms = int(time.time() * 1000)
print(timestamp_ms)
Python中有没有更高精度的时间获取方法?
除了常规的时间获取方式,是否可以用其他模块获得纳秒或者更高精度的系统时间?
使用time模块的perf_counter_ns等高精度函数
time模块提供了perf_counter_ns()函数,可以获取纳秒级别的时间计数,非常适合测量时间间隔而非当前时间。如果需求是系统时间且需要高精度,结合datetime和time模块即可满足多数应用场景。
示例:
import time
start_ns = time.perf_counter_ns()
# 执行任务
end_ns = time.perf_counter_ns()
elapsed_ns = end_ns - start_ns
print(f'耗时纳秒: {elapsed_ns}')