python 判断(服务器)时间戳是否同一天

469 阅读1分钟

python 判断时间戳是否同一天

**注意时区,转换成%Y-%m-%d格式,直接判断是否相等即可

  • 服务器返回的是utc时间戳,返回的每天数据划分以北京时间为准,比较时手动加28800000毫秒,即8小时,转北京时

其他

  • 可以使用 Python 的内置模块 datetime 和 timedelta 对时间戳进行处理,然后进行比较判断。

以下是代码示例:

from datetime import datetime, timedelta

def is_same_day(timestamp1, timestamp2):
    d1 = datetime.fromtimestamp(timestamp1)
    d2 = datetime.fromtimestamp(timestamp2)
    return (d1.date() == d2.date() and
            abs(d1 - d2) <= timedelta(hours=24))
  • 该函数可以判断时间戳是否属于同一天(0 点到 24 点)。

  • datetime.fromtimestamp()方法采用以秒为单位的时间戳,如果向它传递了以毫秒为单位的时间戳,会导致日期超出范围的错误

  • 可以通过除以1000将毫秒转换为秒。

from datetime import datetime

timestamp_in_ms = 1654618085225

d = datetime.fromtimestamp(timestamp_in_ms / 1000)

  • 如果要保留毫秒精度,请改用除以浮点数除法1000.0
  • 另外,适用utc时间,不同时区需另行处理

转utc时间方法

  • import datetime
  • timeStamp = 1557502800
  • dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
  • otherStyleTime = dateArray.strftime("%Y-%m-%d %H:%M:%S")
  • print(otherStyleTime)