python - 从人类时间输入中解析时区

标签 python python-3.x datetime

我在从如下字符串中解析出时区信息时遇到问题: 太平洋标准时间周日晚上 8 点 到目前为止,使用 parsedatetimedateutils 允许我解析日期,但时区通常会导致问题。

有人知道处理此类事情的库吗?我的后备方案是通过正则表达式或日期字符串中的简单“PST”天真地解析时区。

最佳答案

您正在使用的缩写are not unique ;因此,您需要以某种方式解释时区(例如假设美国)并指定每个缩写对您的应用程序的含义:

from dateutil import parser

# map time zones to seconds from GMT
zones = {
    'EST': -5 * 3600,
    'PST': -8 * 3600
}

parser.parse('8 PM on Sunday PST', tzinfos=zones)
# datetime.datetime(2016, 4, 24, 20, 0, tzinfo=tzoffset('PST', -28800))

您可以使用 pip 安装 dateutil:pip install python-dateutil

参见this similar question了解更多信息。

关于python - 从人类时间输入中解析时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36825052/

相关文章:

python - 访问私有(private)类变量

python-3.x - 如何解决Python诗歌依赖错误

arrays - 如何使用 Vue.js 2 按日期对数组进行排序

c# - 获取格式化字符串以表示 UTC 偏移量的最佳方法是什么?

Python:我可以将日期时间转换为粒度小于一整天的 float 吗?

python - 如何在 PyQt5 中的按钮上添加条件?

python - 在 Mac 上使用终端安装 NLTK for Python 3.3

python - 如何在 python 的文本文件中添加总数?

Python 子进程模块 |带密码的 Postgres pg_dump

python - 使用 RegEx 在文件中搜索以使用 Python 查找 ID 及其编号