python计算时间差之seconds()函数和total_seconds()函数的区别(python 时间差计算)

网友投稿 424 2022-08-28


python计算时间差之seconds()函数和total_seconds()函数的区别(python 时间差计算)

前言

1、在python中经常会用到计算两个时间差,两个日期类型进行相减可以获取到时间差。

2、 seconds  函数获取的是仅仅是时间差的秒数,忽略微秒数,忽略天数。

3、 total_seconds() 函数是获取两个时间之间的总差。

4、 total_seconds() = (td.microseconds+ (td.seconds + td.days * 24 * 3600) * 10**6) / 10**6  # td是timedelta对象

实例

实例1:

#-*- coding: UTF-8 -*-'''Created on 2017年10月6日@author: yuthzi''' import datetime t1 = datetime.datetime.strptime("2017-9-06 10:30:00", "%Y-%m-%d %H:%M:%S")t2 = datetime.datetime.strptime("2017-9-06 12:30:00", "%Y-%m-%d %H:%M:%S") interval_time = (t2 - t1).seconds # 输入的结果:7200total_interval_time = (t2 - t1).total_seconds() # 输出结果是: 7200.0print interval_timeprint total_interval_time # 换一个方式t1 = datetime.datetime.strptime("2017-9-06 10:30:00", "%Y-%m-%d %H:%M:%S")t2 = datetime.datetime.strptime("2017-9-08 12:30:00", "%Y-%m-%d %H:%M:%S")interval_time = (t2 - t1).seconds # 输入的结果:7200total_interval_time = (t2 - t1).total_seconds() # 输出结果是: 180000.0print interval_timeprint total_interval_timetd = (t2 - t1)print((td.microseconds + (td.seconds + td.days * 24 * 3600) * 10**6) / 10**6) # datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])td = datetime.timedelta(6, 5, 1, 800, 12, 3) print td # 6 days, 3:12:05.800001print td.seconds # 11525 忽略微秒和天print td.total_seconds() # 529925.800001

实例2:

import datetime time_1 = '2021-09-17 08:45:56'time_2 = '2021-09-17 08:30:00' time_1_struct = datetime.datetime.strptime(time_1, "%Y-%m-%d %H:%M:%S")time_2_struct = datetime.datetime.strptime(time_2, "%Y-%m-%d %H:%M:%S") print((time_1_struct - time_2_struct).total_seconds()) # 输出:956.0print((time_1_struct - time_2_struct).seconds) # 输出:956 interval_time = (time_2_struct - time_1_struct).seconds # 输出的结果:85444total_interval_time = (time_2_struct - time_1_struct).total_seconds() # 输出结果是: -956.0 ######日期不同 time_1 = '2021-09-16 08:45:56'time_2 = '2021-09-17 08:30:00' time_1_struct = datetime.datetime.strptime(time_1, "%Y-%m-%d %H:%M:%S")time_2_struct = datetime.datetime.strptime(time_2, "%Y-%m-%d %H:%M:%S") print((time_1_struct - time_2_struct).total_seconds()) # 输出:-85444.0print((time_1_struct - time_2_struct).seconds) # 输出:956

去期待陌生,去拥抱惊喜。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python之for i in range()函数的用法(pytHon)
下一篇:Spring使用注解实现Bean的自动装配
相关文章

 发表评论

暂时没有评论,来抢沙发吧~