Python3检查int epoch时间是不是小于X小时差异[关闭]

Posted

技术标签:

【中文标题】Python3检查int epoch时间是不是小于X小时差异[关闭]【英文标题】:Python3 check if int epochtime are less then X hours diff [closed]Python3检查int epoch时间是否小于X小时差异[关闭] 【发布时间】:2021-09-09 22:34:38 【问题描述】:

我有两个表示纪元的整数:

x1 = 1597611600
x2 = 1597489203

我想检查他们之间的时间是否少于 72 小时。 在 Python3 中这样做的最佳方法是什么? 请注意,两者都是 int。

【问题讨论】:

到目前为止你尝试过什么?您可以通过标签中说明的工具来完成。 @adamkwm 它不起作用,因为 x1,x2 是字符串,我找不到如何使用 timedelta 这能回答你的问题吗? python - Difference between two unix timestamps 你知道纪元时间代表什么,用什么单位?你能计算出差异吗?你能计算出这个单位中的 72 小时代表什么吗?你能做一个比较吗?这其中的哪一部分是您的实际问题?? 【参考方案1】:

您可以将纪元时间戳转换为日期时间对象,执行减法并将结果与​​ timedelta 对象进行比较。但是,您可以在几秒钟内简单地进行比较。

from datetime import datetime as dt, timedelta as td
def epoch_diff_within(ts1, ts2, hr):
    d1 = dt.fromtimestamp(x1)
    d2 = dt.fromtimestamp(x2)
    return d1 - d2 < td(hours=hr)

def epoch_diff_within2(ts1, ts2, hr):
    return ts1 - ts2 < hr * 60 * 60

x1 = 1597611600
x2 = 1597489203
print(epoch_diff_within(x1, x2, 72)) # Output: True
print(epoch_diff_within2(x1, x2, 72)) # Output: True
print(epoch_diff_within(x1, x2, 24)) # Output: False
print(epoch_diff_within2(x1, x2, 24)) # Output: False

【讨论】:

以上是关于Python3检查int epoch时间是不是小于X小时差异[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

我是不是应该强制重新分配检查新块大小是不是小于初始块?

将 time_t 转换为 int

如何检查时间是不是大于或小于PLSQL中的另一个时间

将事件流式传输到大查询 - 数据流 - 将 **epoch 时间戳** (int) 插入时间戳列的最佳方式

在 Python 3.6.9 中以纳秒为单位获取 Epoch 时间戳

为什么验证集的loss会小于训练集的loss?