首页 > 后端开发 > Python教程 > 如何高效地将 ISO 8601 字符串解析为 Python 日期时间对象?

如何高效地将 ISO 8601 字符串解析为 Python 日期时间对象?

Susan Sarandon
发布: 2024-12-18 03:46:15
原创
316 人浏览过

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() 函数返回一个可以在 Python 代码中使用的日期时间对象。

以上是如何高效地将 ISO 8601 字符串解析为 Python 日期时间对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板