【问题标题】:How to subtract seconds from a datetime and compare it?如何从日期时间中减去秒并进行比较?
【发布时间】:2020-11-06 14:43:06
【问题描述】:

所以我确实在这里看到了所有关于从datetimes 中减去秒和总体上减去datetimes 的主题,但我仍然卡住并试图解决很长时间。

我写了以下代码。

这部分代码在ttl参数中向我的txt文件发送时间戳。

lines.append(""+dataFather.decode()[:-1]+','+datetime.datetime.now().strftime("%m/%d/%y %H:%M:%S"))

它以字符串的形式发送。

然后,我只是将其保留在时间变量内。

    infoList = line.split(",")
.....
            time = infoList[3]

然后,在另一个代码运行中,我只想检查秒之间的减法是大于还是小于 60。

timeDif = datetime.now()-datetime.strptime(time, "%m/%d/%y %H:%M:%S")
if 60 > timeDif.seconds():
     ......

但是我得到了以下错误,它甚至没有到达“if”语句。

Traceback (most recent call last):
  File "server_copy.py", line 36, in <module>
    timeDif = datetime.now()- datetime.datetime.strptime(time, "%m/%d/%y %H:%M:%S")
AttributeError: type object 'datetime.datetime' has no attribute 'datetime'

这很奇怪,因为我确实使用过:

from datetime import datetime, timedelta

这里的错误在哪里?

【问题讨论】:

    标签: python datetime time subtraction seconds


    【解决方案1】:

    在您的示例中显示

    timeDif = datetime.now()-datetime.strptime(time, "%m/%d/%y %H:%M:%S")
    

    但在错误中很明显

    timeDif = datetime.now()- datetime.datetime.strptime(time, "%m/%d/%y %H:%M:%S")
    

    所以您的示例和错误消息使用不同的代码。向我们展示你运行它的整个文件。

    还有为什么你以前使用datetime.datetime

    lines.append(""+dataFather.decode()[:-1]+','+datetime.datetime.now().strftime("%m/%d/%y %H:%M:%S"))
    

    尽量保持一致,它会自行解决。

    【讨论】:

    • 谢谢。我也注意到了这一点,并阅读了有关导入日期时间的信息并解决了这些问题。但是现在我有一些其他错误,因为我试图减去以其他方式而不是“datetime.strptime”的“datetime.now()”,然后它给了我一个错误。
    【解决方案2】:

    不要使用timeDif.seconds()秒不是方法

    尝试使用timeDif.seconds,它会正常工作!

    
    from datetime import datetime, timedelta
    from time import sleep
    
    before = datetime.now()
    sleep(5) # wait for 5 se
    now = datetime.now()
    
    timeDif = now-before
    
    print(str(timeDif.seconds))
    
    

    【讨论】:

    • 正如我所说,它甚至没有达到“if”语句。
    猜你喜欢
    • 1970-01-01
    • 2014-07-24
    • 1970-01-01
    • 2020-10-18
    • 2020-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多