python 计算两个时间段的时间查。

前言:

  • ​​​​​​python 提供 时间模块datetime ,此处也是用的datetime做的测试,主要用到datetime下的时间 差函数 timedelta 。

  • 如果有人问你昨天是几号,这个很容易就回答出来了。但是如果问你200天前是几号,就不是那么容易了。而在Python中datetime模块中的timedelta就可以很轻松给出答案。

timedelta 介绍:

  1.  datetime.timedelta对象代表两个时间之间的时间差,两个date或datetime对象相减就可以返回一个timedelta对象。
  2. timedelta 函数原码分析:

class datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])

  • 从构造函数的定义中可以看出,所有参数都是可选的,并且默认都是0。
  • 参数的值可以是整数,浮点数,正数或负数。
  • timedelta也有自己的一些属性和方法,可以通过dir(datetime.timedelta)查看。
  • 针对时间存储,timedelta内部只能存储days,seconds,microseconds,
  • 其他参数的值会自动按如下规则进行转换:
  1.  n millisecond(毫秒)转换成 n*1000 microseconds(微秒)   ------- 注:1000microseconds /millisecond
  2.  n minute (分钟) 转换成 n*60 seconds   ------- 注:60 seconds /minute
  3.  n hour(小时) 转换成 n*3600 seconds   ------- 注:3600 seconds /hour
  4. n week(周)转换成 n*7 days   ------- 注:17 days /week

案例:

例如:编写一段程序,要求开始时间和结束时间,时间间隔3day 。

import datetime
start = datetime.datetime.now() # 指定当前时间为开始时间 。
end = start - datetime.timedelta(days=3) # 算法原理:结束时间 = 开始时间-3天的时间差

print(start,end) # 打印开始,结束时间 。

结果:>>    2019-10-23 09:09:21.547759       2019-10-20 09:09:21.547759
print(start-end,type(start-end)) # 打印时间差,确认时间差类型。

结果:>>    3 days, 0:00:00       <class 'datetime.timedelta'>

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值