首页 > 后端开发 > Python教程 > 如何使用 Python 将本地时间字符串转换为 UTC?

如何使用 Python 将本地时间字符串转换为 UTC?

Linda Hamilton
发布: 2024-11-30 22:56:22
原创
990 人浏览过

How Can I Convert Local Time Strings to UTC Using Python?

将本地时间字符串转换为 UTC

将本地时间字符串转换为 UTC 时间字符串可能是一项复杂的任务,因为时区和夏令时节省时间 (DST) 可能会带来歧义。本文详细介绍了如何使用 datetime 和 pytz 模块实现此转换。

步骤:

  1. 解析本地时间字符串:
    使用 datetime.datetime.strptime() 函数将字符串解析为简单的日期时间对象没有时区信息。
  2. 检查本地时区:
    通过查询系统或使用 pytz.timezone() 函数确定本地时区。
  3. 构造本地化时区对象:
    使用本地时区创建一个时区对象pytz.timezone() 函数。
  4. 将本地时区附加到日期时间:
    调用 pytz.localize() 函数将本地时区附加到原始日期时间,从而得到本地化的日期时间对象。
  5. 转换为UTC:
    对本地化日期时间使用 astimezone() 方法将其转换为 UTC。
  6. 格式化 UTC 时间:
    应用 strftime() 方法UTC 日期时间,将其格式化为所需的字符串

示例:

以下示例将“America/”中的本地时间字符串“2001-2-3 10:11:12”转换为Los_Angeles”时区与其等效的 UTC 时间:

from datetime import datetime   
import pytz

local = pytz.timezone("America/Los_Angeles")
naive = datetime.strptime("2001-2-3 10:11:12", "%Y-%m-%d %H:%M:%S")
local_dt = local.localize(naive, is_dst=None)
utc_dt = local_dt.astimezone(pytz.utc)

print(utc_dt.strftime("%Y-%m-%d %H:%M:%S"))
登录后复制

这将输出:“2001-02-03 02:11:12”。

以上是如何使用 Python 将本地时间字符串转换为 UTC?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板