首頁 >後端開發 >Python教學 >如何有效率地將 ISO 8601 字串解析為 Python 日期時間物件?

如何有效率地將 ISO 8601 字串解析為 Python 日期時間物件?

Susan Sarandon
Susan Sarandon原創
2024-12-18 03:46:15213瀏覽

How to Efficiently Parse ISO 8601 Strings into Python datetime Objects?

如何將 ISO 8601 字串解析為 Python 日期時間物件

ISO 8601 是表示日期和時間的廣泛使用的標準。它經常用於資料交換和網路服務。然而,將 ISO 8601 字串解析為 Python 日期時間物件可能有點困難。

一種駭客方法

一個常見的方法是使用 time.strptime() 函數來解析字串。然而,這種方法可能很乏味且容易出錯。以下是一個範例:

datetime.datetime(*time.strptime("2009-05-28T16:15:00", "%Y-%m-%dT%H:%M:%S")[:6])

更簡潔的解決方案

幸運的是,有更優雅的方法來解析 ISO 8601 字串。 dateutil 函式庫提供了一個名為 parser.parse() 的便利函數:

from dateutil import parser

yourdate = parser.parse("2009-05-28T16:15:00")

此函數可以處理各種 ISO 8601 格式,包括帶有時區的字串。

範例用法

以下是如何使用parser.parse() 的一些範例函數:

# Parse a basic ISO 8601 string
dateutil.parser.parse("2009-05-28T16:15:00Z")

# Parse a string with a timezone offset
dateutil.parser.parse("2009-05-28T16:15:00-05:00")

# Parse a string with a fractional second
dateutil.parser.parse("2009-05-28T16:15:00.123Z")

parser.parse() 函數傳回🎜>

parser.parse() 函數傳回一個可以在Python 程式碼中使用的日期時間物件。

以上是如何有效率地將 ISO 8601 字串解析為 Python 日期時間物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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