datetime计算秒数差需要注意的问题

一、结论:使用datetime格式试算的秒数最大值不会超过一天的时间,即86400,因为会对86400进行取余操作

二、证明:

1、源代码:

在这里插入图片描述

2、案例证明

from datetime import datetime as dt
dt1 = dt(2022, 8, 14, 10, 0)
dt2 = dt(2022, 8, 12, 22, 30)
print((dt1 - dt2).seconds)
print(dt1.timestamp() - dt2.timestamp())
print((dt1.timestamp() - dt2.timestamp()) % 86400)

结果输出:

41400
127800.0
41400.0
dt1 = dt(2022, 8, 14, 10, 0)
dt2 = dt(2022, 8, 13, 10, 0)
print((dt1 - dt2).seconds)
print(dt1.timestamp() - dt2.timestamp())
print((dt1.timestamp() - dt2.timestamp()) % 86400)

结果输出:
0
86400.0
0.0

在这里插入图片描述

3、结论:total_seeconds()与timestamp()函数

from datetime import datetime
dt1 = datetime(2022, 8, 30, 15, 50)
dt2 = datetime(2022, 8, 10, 15, 50)
print((dt1 - dt2).seconds)
print((dt1 - dt2).total_seconds())
print((dt1.timestamp() - dt2.timestamp()))
结果输出:
0
1728000.0
1728000.0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值