求推荐可直接解析人类可读日期字符串的Python datetime库
符合需求的Python日期时间处理库推荐
直接用python-dateutil就行,完全匹配你的需求。这个库是Python日期处理领域的老牌常用工具,自带的解析模块不需要你写任何格式匹配代码,能自动识别绝大多数人类可读的日期时间字符串,你列的两个示例格式都能直接正确解析,不需要额外配置。
使用方法
先安装依赖:pip install python-dateutil
它的原生调用逻辑和你期望的形式几乎一致,要是想完全对齐你写的create调用风格,加一行简单封装即可:
from dateutil import parser class cool_dt_lib: @staticmethod def create(dt_str): return parser.parse(dt_str) # 直接按你期望的方式调用即可 dt = cool_dt_lib.create('Sunday, 17 July 2022 - 01:00 UTC') dt2 = cool_dt_lib.create('7/14/2022 4:37:11 PM')
- 解析出来的结果是Python标准库原生的
datetime对象,不用做额外类型转换,能直接对接所有兼容标准datetime的代码 - 可以自动识别UTC这类时区标识,返回带正确时区信息的datetime对象
- 默认就能适配不同地区的日期书写习惯,比如你给的第二个例子是美式的月/日/年格式,不会误解析成错误日期,有特殊需求也可以加参数调整解析规则。
如果你除了解析之外,还需要做更便捷的日期计算、时区转换、格式化输出,也可以选pendulum,它同样支持无配置自动解析日期字符串,返回的增强版datetime对象完全兼容标准库接口,用起来更顺手。如果需要解析多语言的非标准日期(比如带中文星期、月份的格式),可以换dateparser,只是这个库依赖体积更大,纯英文常规场景没必要用。
内容的提问来源于stack exchange,提问作者Diggy
相关产品推荐
相关产品推荐

