python解决日期问题
0、导包
import datetime
1、读入一行日期
例如:20011202
str = input()
2、分别取出日期中的年月日
sa = int(str[0:4])
sb = int(str[4:6])
sc = int(str[6:])
3、构造日期类
s = datetime.date(sa, sb, sc)
4、日期做加法
s = s + datetime.timedelta(days=1)
函数原型:
class datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])
5、日期转成字符串
s.strftime('%Y%m%d')
补充:
1)计算两个日期相隔多少天
-
date类中还有一个重要方法:d.sub(d1)和d.rsub(d1)方法;
-
作用:获得二个日期相差多少天;
-
d.sub(d1):计算的是d减去d1的天数;
-
d.rsub(d1):计算的是d1减去d的天数;
2)计算两个日期相隔多少月
实际中,计算两个日期之间的月份,有如下两个思路:Ⅰ自然数的差,直接用月份相减,这种方式最简单粗暴;Ⅱ天数的差,月份 = 天数差 ➗ 30,最后在取整;