python计算日期相差几年几月几日
本文最后更新于:2020年9月16日 上午
背景
如何计算日期间隔的年份月份呢?之前写了一个程序,使用datetime
计算和女票在一起多少天了,但是最近遇到了一个问题,随着时间的增长,我们需要计算日期间隔的年月日,毕竟1265天是几年呢?本来打算自己写一个,结果发现计算平年闰年,计算每个月多少天,真的是一个非常麻烦的事。于是面向搜索google,我发现中文根本搜不出来任何结果,最终借助google翻译,用英文瞎打误撞发现了dateutil
这个模块非常好用。
计算日期间隔的年月日
datetime
只能计算日期间隔了多少天,而dateutil
则可以计算日期间隔了几年几月几日。
使用datetime
我在一开始使用了datetime
,但是datetime
模块只能计算天数,过程如下所示:
1 |
|
使用dateutil
使用dateutil
可以计算出日期相隔的年月日:
1 |
|
从字符串中解析时间
datetime
模块解析一个时间字符串非常复杂(需要自己写日期的格式规则),而dateutil
则非常简单(不需要加一长串规则)。
使用datetime
1 |
|
使用dateutil
1 |
|
计算时间列表
试想一下,今天是星期二,如果从今天开始往后10周,每周星期二我都需要听一节课,怎么计算我听课的日期?
1 |
|
最后
个人还是特别喜欢dateutil
解析时间和计算日期间隔年月日的功能,真的省了我太多事了。