You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中将带时区信息的字符串转换为UTC格式?

Python将带时区的时间字符串转换为UTC格式

直接用Python标准库的datetime模块就能搞定,步骤如下:

  • 用datetime.fromisoformat()解析输入的带时区字符串,这个方法原生支持YYYY-MM-DDTHH:MM:SS.fff±HH:MM这种ISO格式的时间
  • 调用astimezone(datetime.timezone.utc)把时间转成UTC时区的对象
  • 最后格式化输出成带Z后缀的UTC格式字符串

代码示例:

import datetime

# 输入的带时区时间字符串
time_input = "2023-01-24T22:18:00.089-05:00"

# 解析为带时区的datetime对象
dt_tz = datetime.datetime.fromisoformat(time_input)

# 转换为UTC时间
dt_utc = dt_tz.astimezone(datetime.timezone.utc)

# 方式1:用isoformat后替换后缀
utc_result = dt_utc.isoformat().replace("+00:00", "Z")

# 方式2:用strftime精确控制格式(适合需要严格控制毫秒位数的场景)
# utc_result = dt_utc.strftime("%Y-%m-%dT%H:%M:%S.%f")[:-3] + "Z"

print(utc_result)  # 输出:2023-01-25T03:18:00.089Z

两种格式化方式说明:

  • 方式1简单快捷,isoformat()默认输出的UTC时间后缀是+00:00,替换成Z就符合要求了
  • 方式2用strftime可以精准控制每一部分的格式,%f会输出微秒(6位),取前3位就是毫秒,再加上Z后缀即可

内容的提问来源于stack exchange,提问作者jakeMantle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 09:53:00