python中timedelta_Python – 使用时间戳,timedelta的日期和时间比较

我花了过去一小时挖掘

Python文档和许多SO问题;请原谅我是另一个Python新手被Python时代的谜团所困扰.

我的目标是确定当前时间和某个日期/时间之间的差异,而不管过去/将来,并返回可执行的格式,如秒.

例如,如果输入是下午2:00和下午4:00(现在),我想要说“-7200”,表示事件发生在两个小时的AGO.如果输入是星期五下午4点(现在)和太阳5:00 PM,输出应为“176400”秒,代表从现在开始的两天和一个小时.

这是我试过的东西

>我的第一个版本是一个使用字符串时间戳并将其拼接到多个变量的函数,然后进行比较.它有很多错误,我想象如果我发布在这里,我将负责一个程序员抛出.

>我绊倒了这个神奇的timedelta功能,并探索了文档和SO,但我不认为这是我正在寻找的.

>我的想法是将时间戳从时代转换成秒,然后减去,但是如果减法是错误的顺序(不同的情况下,如果事件在将来),这将成为一个问题,我觉得将if语句添加到检查秒钟的标志将是笨重的,要避免的事情.

这是我当前的代码(仍然需要修改“双向”比较),从以前解决的SO问题:

now = time.strftime("%a %b %d %H:%M:%S %Y")

then = time.ctime(os.path.getmtime("x.cache"))

tdelta = datetime.strptime(now, '%a %b %d %H:%M:%S %Y') - datetime.strptime(then, '%a %b %d %H:%M:%S %Y')

但是,如果连接这些点,我很失望.

我该如何做到这一点?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值