首頁  >  文章  >  後端開發  >  如何使用 Python 處理日期/時間解析中的縮寫時區名稱?

如何使用 Python 處理日期/時間解析中的縮寫時區名稱?

Linda Hamilton
Linda Hamilton原創
2024-10-24 08:54:01202瀏覽

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn