如何将 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() 函数返回一个可以在 Python 代码中使用的日期时间对象。
以上是如何高效地将 ISO 8601 字符串解析为 Python 日期时间对象?的详细内容。更多信息请关注PHP中文网其他相关文章!