前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python的dateutil库

python的dateutil库

作者头像
灯珑LoGin
发布2022-10-31 09:33:20
6180
发布2022-10-31 09:33:20
举报
文章被收录于专栏:龙进的专栏

dateutil库很强大,可以:

1、计算日期差值

2、计算两个date或者datetime对象的差值

3、计算更灵活的时间规则

4、解析几乎任何字符串格式的日期

5、根据系统信息自动分析时区信息

需要注意的是,dateutil不是内置的库,需要我们手动安装。安装python-dateutil

parse模块

parse模块可以匹配几乎所有的时间字符串并将其转换为datetime对象。

举个例子

代码语言:javascript
复制
from dateutil.parser import parse

print(parse('Sat Oct 11 17:13:16 UTC 2003'))
print(parse('2018-08-20'))
print(parse('2018.8.20'))
print(parse('12:00:00'))
#fuzzy开启模糊匹配,自动过滤无法识别的时间日期字符
print(parse("this is the wonderful moment 21:00:00,I feel good", fuzzy=True))

如何在匹配的时候忽略时区呢?那就需要在需要匹配的字符串后面加上ignoretz=True

rrule模块

rrule模块可以计算并生成一些重复的时间规则,提供对iCalendar RFC中的一些标准的支持。

举个简单的例子。我们给出一个日期 2014年12月31日,我们需要计算包括它在内的往后4个有31号的月份,并输出具体是哪一天。

代码语言:javascript
复制
import pprint
from dateutil.rrule import rrule, MONTHLY
from datetime import datetime

start_date = datetime(2014, 12, 31)
l = list(rrule(freq=MONTHLY, count=4, dtstart=start_date))
pprint.pprint(l)

输出结果

代码语言:javascript
复制
[datetime.datetime(2014, 12, 31, 0, 0),
 datetime.datetime(2015, 1, 31, 0, 0),
 datetime.datetime(2015, 3, 31, 0, 0),
 datetime.datetime(2015, 5, 31, 0, 0)]
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020年8月21日2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档