比较2次,并在几分钟内得出差异

2024-06-02 07:35:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着用两次来计算时差。我从一个api中获取了两个历元时间戳,将它们转换为日期时间,然后尝试比较它们,以分钟为单位获得时间差

控制台中没有错误。。当我返回时,分钟数保持在0.0

onlinestatus = (data["session"]["online"])


    if onlinestatus is False:
        theNewLineString = "\n"
        lastLogout_string = "LastLogout: "
        log_in = int(data2["player"]["lastLogin"])
        log_out = int(data2["player"]["lastLogout"])
        log_in_converted = timedate = time.strftime('%Y-%m-%d\n%I:%M %p', time.localtime(log_in / 1000))
        log_out_converted = timedate = time.strftime('%Y-%m-%d\n%I:%M %p', time.localtime(log_out / 1000))
        diff = datetime.strptime(log_in_converted, '%Y-%m-%d\n%I:%M %p') - datetime.strptime(log_out_converted, '%Y-%m-%d\n%I:%M %p')

        return str("Online: ") + "`" + "False" + "`" + theNewLineString + theNewLineString + lastLogout_string + "`" + log_out_converted + theNewLineString + "`" + "Minutes Since Last Logout: " + "`" + str(diff.seconds/60) + "`"

我知道其他一切都是有效的。我使用discord机器人返回所有内容,以下是它返回的内容:

Online: False

LastLogout: 2020-05-16
12:27 PM
Minutes Since Last Logout: 0.0

感谢您的帮助


Tags: inlogfalsestringtime时间outint
1条回答
网友
1楼 · 发布于 2024-06-02 07:35:31

假设您有两个datetime对象:

d1 = datetime.datetime.now()
d2 = datetime.datetime.now()

现在可以从另一个中减去一个:

(d2 - d1)

结果如下:

datetime.timedelta(seconds=3, microseconds=516614)

然后,您可以调用“秒”项并将其转换为分钟:

(d2 - d1).seconds / 60

希望这有帮助

相关问题 更多 >