python - 比较 2 次并在几分钟内得到差异
问题描述
我正在尝试使用两次来获得时差。我从 api 获得 2 个纪元时间戳,将它们转换为日期时间,然后尝试比较它们并以分钟为单位获得时差。
控制台中没有错误..当我返回它时,分钟只停留在 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) + "`"
我知道其他一切都有效。我正在使用不和谐机器人返回所有内容,这是它返回的内容:
Online: False
LastLogout: 2020-05-16
12:27 PM
Minutes Since Last Logout: 0.0
任何帮助表示赞赏!
解决方案
假设您有 2 个日期时间对象:
d1 = datetime.datetime.now()
d2 = datetime.datetime.now()
现在您可以从另一个中减去一个:
(d2 - d1)
这给出了结果:
datetime.timedelta(seconds=3, microseconds=516614)
然后您可以调用“秒”项并将其转换为分钟:
(d2 - d1).seconds / 60
希望这可以帮助。
推荐阅读
- python - pip install frhdtools 抛出 egg_info 错误
- php - Mysql 查询唯一访问者和回访者
- object - 如何清晰查看对象类型?
- javascript - 从嵌套函数 javascript 返回一个函数
- excel - 将工作表代号与工作簿一起使用-
- apexcharts - 我的两个 Apexcharts 系列之一不能在 Y 轴上自动缩放
- amazon-web-services - 在 Windows 2019 服务器 AWS 上运行 linux 容器时出错
- javascript - JavaScript 的“更新”功能,类似于 p5.js?
- java - 将 JSON 文件解析为 Java 对象
- python - 根据设置和运行操作检查输入