Python:将具有不同时区的时间字符串转换为主机时区日期时间对象? [复制]

2024-01-02

我的主机有时区 UTC,我正在尝试将 PDT 时间字符串转换为日期时间对象, 我已经使用了下面给出的代码片段,但它不起作用

datetime_obj = datetime.datetime.strptime('Thu Jun 09 08:28:12 PDT 2016', '%a %b %d %H:%M:%S %Z %Y')

我收到此错误 -

ValueError:时间数据“Thu Jun 09 08:28:12 PDT 2016”不匹配 格式 '%a %b %d %H:%M:%S %Z %Y'

我知道这是因为我的主机的时区是 UTC。但我无法找出解决这个问题的方法。我需要将 PDT 字符串转换为 UTC 感知时区。

我被封锁了。任何帮助表示赞赏。


你可以有许多不同的值TZINFOS。这将支持您的代码在遇到不同时区时不会失败。

下面解释了解析字符串然后将 PDT 日期时间转换为 UTC。

import pytz
import dateutil.parser
TZINFOS = { 'PDT': pytz.timezone('US/Pacific')}
datetime_obj = dateutil.parser.parse('Thu Jun 09 08:28:12 PDT 2016', tzinfos= TZINFOS)
print datetime_obj
datetime_in_utc = datetime_obj.astimezone(pytz.utc) # convert to UTC
print datetime_in_utc

And print pytz.all_timezones会给你所有可能的值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python:将具有不同时区的时间字符串转换为主机时区日期时间对象? [复制] 的相关文章

随机推荐