在 Python 中解析具有缩写时区名称的日期/时间字符串
解析日期/时间字符串时,处理缩写时区可能具有挑战性名称。 Dateutil 的 parse() 函数通常用于 Python 中的日期解析,它本身可能无法处理时区缩写。
使用 tzinfos 关键字参数的解决方案
要解决这个问题,您可以在 dateutil 的 parse() 中使用 tzinfos 关键字参数。此参数允许您传递一个字典,将时区缩写映射到其相应的 GMT 偏移量(以秒为单位)。例如,要处理已知时区 (tzd) 的字典:
<code class="python">import dateutil.parser as dp tzd = {'EST': -5*3600} # Example dictionary s = 'Sat, 11/01/09 8:00PM EST' dt = dp.parse(s, tzinfos=tzd) print(dt) # Output: 2009-11-01 20:00:00-05:00</code>
填充 tzinfos 字典
可以使用各种来源填充 tzinfos 字典。一种方法是手动将每个时区缩写分配给其相应的 GMT 偏移量。或者,您可以参考预定义的时区数据库或 timeanddate.com 等网站来获取更全面的列表。
时区命名注意事项
请记住特定时区缩写可能对应于多个时区。解决这些冲突可能涉及优先考虑更常用的变体。还值得注意的是,并非所有时区都可能具有普遍认可的缩写,可能需要根据您的用例进行进一步定制。
以上是如何在 Python Dateutil 日期解析中处理缩写时区名称?的详细内容。更多信息请关注PHP中文网其他相关文章!