插件窝 干货文章 Python 中如何格式化输出时间并控制精度

Python 中如何格式化输出时间并控制精度

微秒 精确 格式化 输出 105    来源:    2025-03-13

在 Python 中,你可以使用 datetime 模块来处理和格式化时间。为了控制时间的输出精度,你可以使用 strftime 方法来格式化时间,并通过指定格式字符串来控制输出的精度。

以下是一些常见的格式化选项:

  • %Y: 四位数的年份(例如:2023)
  • %m: 两位数的月份(01 到 12)
  • %d: 两位数的日期(01 到 31)
  • %H: 两位数的小时(24 小时制,00 到 23)
  • %M: 两位数的分钟(00 到 59)
  • %S: 两位数的秒数(00 到 59)
  • %f: 微秒(000000 到 999999)

示例代码

from datetime import datetime

# 获取当前时间
now = datetime.now()

# 格式化输出时间,精确到秒
formatted_time = now.strftime("%Y-%m-%d %H:%M:%S")
print("精确到秒:", formatted_time)

# 格式化输出时间,精确到微秒
formatted_time_with_microseconds = now.strftime("%Y-%m-%d %H:%M:%S.%f")
print("精确到微秒:", formated_time_with_microseconds)

输出示例

精确到秒: 2023-10-05 14:30:45
精确到微秒: 2023-10-05 14:30:45.123456

控制微秒的精度

如果你只想显示部分微秒(例如前三位),你可以对 %f 进行截取:

# 格式化输出时间,精确到毫秒(微秒的前三位)
formatted_time_with_milliseconds = now.strftime("%Y-%m-%d %H:%M:%S.%f")[:-3]
print("精确到毫秒:", formatted_time_with_milliseconds)

输出示例

精确到毫秒: 2023-10-05 14:30:45.123

总结

  • 使用 strftime 方法可以灵活地格式化时间。
  • 通过调整格式字符串中的 %f,可以控制微秒的精度。
  • 你可以根据需要截取 %f 的部分位数来控制输出的精度。