datetime.timedelta类详细介绍
我们通常使用datetime包里面的类进行时间处理,最常用的类是:datetime
和 timedelta
。前者用于表示时间,而后者用于计算时间差。除此以外,datetime包里面还有 date 和 time 对象,不过最常用的还是datetime
和 timedelta
。
datetime.timedelta对象代表两个时间之间的时间差,两个date或datetime对象相减就可以返回一个timedelta对象。
1、timedelta类的定义
class datetime.timedelta(days=0,seconds=0,microseconds=0,milliseconds=0,minutes=0,hours=0,weeks=0)
参数说明:
所有的参数都是可选的,默认值为0,参数可以是整数或者浮点数,既可以是整数也可以是负数。
虽然说参数可以传递的单位很多,但是python内部实现只存储了days,seconds和microseconds三种单位,所有其他的单位在计算时都会转换成相应的三种单位:
1 millisecond = 1000 microseconds
1 minute = 60 seconds
1 hour = 3600 seconds
1 week = 7 days
2、timedelta类的使用场景:给当前时间加一天、一小时、一分钟
时间加1天
offset = datetime.timedelta(days=1)
时间加1小时
offset = datetime.timedelta(hours=1)
时间加1分钟
offset = datetime.timedelta(minutes=1)
时间加1秒钟
offset = datetime.timedelta(seconds=1)
timedelta类的使用场景,如下代码所示:
import datetime
today = datetime.datetime.now()
# 计算偏移量
offset = datetime.timedelta(days=1)
# 获取修改后的时间并格式化
tomorrow = (today + offset).strftime('%Y-%m-%d %H:%M:%S')
print(tomorrow)