如何使用 Python 处理日期/时间解析中的缩写时区名称?

Linda Hamilton
发布: 2024-10-24 08:54:01
原创
298 人浏览过

How to Handle Abbreviated Time Zone Names in Date/Time Parsing with Python?

在 Python 中解析带有缩写时区名称的日期/时间字符串

在 Python 中解析包含缩写时区名称的时间戳可能具有挑战性。人们可能会尝试使用 dateutil 库的 parse() 函数,但它本身并不处理缩写时区。

综合解决方案

幸运的是,dateutil 提供了另一种选择解决方案。通过将时区名称字典与 GMT 偏移量传递给 tzinfos 关键字参数,我们可以指定必要的时区信息。这允许灵活地解析各种时区缩写。下面是一个示例:

<code class="python">import dateutil.parser as dp

# Dictionary mapping time zone abbreviations to GMT offsets
tzd = {'EST': -5*3600, 'PDT': -7*3600, ...}

s = 'Sat, 11/01/09 8:00PM'

for tz_code in ('PST','PDT','MST','MDT','CST','CDT','EST','EDT'):
    dt = s+' '+tz_code
    print(dt, '=', dp.parse(dt, tzinfos=tzd))</code>
登录后复制

在此示例中,脚本迭代常见时区缩写列表并相应地解析给定的时间戳字符串。输出将类似于:

Sat, 11/01/09 8:00PM PST = 2009-11-01 20:00:00-08:00
Sat, 11/01/09 8:00PM PDT = 2009-11-01 20:00:00-07:00
...
登录后复制

填充时区字典

生成时区字典就像创建缩写到其缩写的映射一样简单相应的 GMT 偏移量。为此,可以查阅 timeanddate.com 或维基百科等资源。请注意,某些缩写可能有多种可能的解释,因此根据上下文仔细考虑分配哪种解释非常重要。

结论

通过利用 tzinfos 关键字参数dateutil 的 parse() 函数,我们可以在 Python 中解析带有缩写时区的时间戳,从而实现更全面的日期/时间处理能力。

以上是如何使用 Python 处理日期/时间解析中的缩写时区名称?的详细内容。更多信息请关注PHP中文网其他相关文章!

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