」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在 Python 中解析帶有縮寫時區名稱的時間戳字串?

如何在 Python 中解析帶有縮寫時區名稱的時間戳字串?

發佈於2024-11-08
瀏覽:474

How to Parse Timestamp Strings with Abbreviated Timezone Names in Python?

在Python 中解析帶有縮寫時區名稱的時間戳字符串

解析帶有縮寫時區名稱的時間戳字符串在Python 中提出了獨特的挑戰。內建的 dateutil 函式庫提供了一個 parser.parse() 函數來促進時間戳解析,但它本身並不能解決時區縮寫。

為了解決這個問題,一個簡單有效的解決方案利用了 tzinfos 關鍵字參數解析器.parse()。此參數接受將時區縮寫映射到對應的 GMT 偏移量(以秒為單位)的字典。

要填入 tzinfos 字典,可以手動建立或從外部來源取得時區縮寫和偏移量清單。字典建立後,以下程式碼示範如何解析時間戳字串並檢索其對應的時區:

import dateutil.parser as dp

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

# Create timezone abbreviation to offset dictionary
tzd = {
    'PST': -8*3600,
    'PDT': -7*3600,
    'MST': -7*3600,
    'MDT': -6*3600,
    'CST': -6*3600,
    'CDT': -5*3600,
    'EST': -5*3600,
    'EDT': -4*3600
}

for tz_code in ('PST','PDT','MST','MDT','CST','CDT','EST','EDT'):
    dt = s ' ' tz_code
    print(dt, '=', dp.parse(dt, tzinfos=tzd))

此程式碼迭代提供的時區縮寫,對於每個縮寫,它解析時間戳字串並顯示解析的日期時間物件以及對應的時區名稱。

這種方法有效地處理帶有縮寫時區的時間戳字串,從而可以輕鬆解析和解釋。

版本聲明 本文轉載於:1729731286如有侵犯,請洽[email protected]刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3