在Python中获取当前时间戳(毫秒级)主要有以下两种方法,推荐使用datetime
模块或time
模块结合处理:
一、使用datetime
模块(推荐)
-
获取当前时间戳(秒级)
from datetime import datetime timestamp = datetime.now().timestamp() print(timestamp) # 输出浮点数,如1717180800.123456
-
转换为毫秒级时间戳
timestamp_ms = int(timestamp * 1000) print(timestamp_ms) # 输出整数,如1717180800123
-
格式化输出
formatted_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S.%f")[:-3] print(formatted_time) # 输出"2025-05-02 12:30:00.123"
二、使用time
模块
-
获取当前时间戳(秒级)
import time timestamp = time.time() print(timestamp) # 输出浮点数,如1717180800.232345
-
转换为毫秒级时间戳
timestamp_ms = int(time.time() * 1000) print(timestamp_ms) # 输出整数,如1717180800123
-
高精度计时(推荐)
start_time = time.perf_counter() # 执行操作 end_time = time.perf_counter() duration_ms = int((end_time - start_time) * 1000) print(duration_ms) # 输出操作耗时(毫秒)
三、注意事项
-
time.time()
返回的是秒级浮点数,需乘以1000转换为毫秒。 -
datetime.now().timestamp()
返回的是秒级浮点数,转换为毫秒时需乘以1000。 -
time.perf_counter()
适用于高精度计时,返回自系统启动的累积时间(秒级),转换为毫秒时同样乘以1000。
以上方法均可满足不同场景需求,建议优先使用datetime
模块,其代码更简洁且可读性高。