跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 请教两个 datetime.datetime 要计算小时差,怎么做会比较好? 要先转成 datetime.timedelta 再做吗?
未分類
15 10 月 2020

请教两个 datetime.datetime 要计算小时差,怎么做会比较好? 要先转成 datetime.timedelta 再做吗?

请教两个 datetime.datetime 要计算小时差,怎么做会比较好? 要先转成 datetime.timedelta 再做吗?

資深大佬 : qazwsxkevin 4

有两个 datetime.datetime 数据
nowTime = datetime.datetime.now()
getFromdatabaseTime = dbTask.get(‘RecordTime’)

如果: TimeResult = (nowTime – getFromdatabaseTime).seconds 可以得到一个数值,不过似乎不准的一个什么玩意。。。(汗)

鉴于印象中以前做过 datetime.timedelta 的计算,似乎 datetime.timedelta 的方法比较容易写,直观又方便 但看了一下文档,似乎又没提到 datetime.timedelta 和 datetime.datetime 的互转。
datetime.datetime 要转成 datetime.timedelta ? 这个应该怎么转?
反过来 datetime.timedelta 要转成 datetime.datetime ?
如果大哥们硬要把 datetime.datetime 以拆元组里面的值,分解写计算过程出结果,这就离谱了(笑,逃~)

大佬有話說 (5)

  • 資深大佬 : raymanr

    datetime.datetime 是具体时间的数据类型
    datetime.timedelta 是代表时间差的数据类型

    我不清楚 datetime 怎么转换 timedelta, 会出什么问题

    不过可以告诉你是 datetime – datetime 就会得到 timedelta, 然后 total_seconds / 3600 就是小时了

    delta 是数学中常用来表示差值的希腊字符

  • 資深大佬 : Acoffice

    你先转或者直接用时间戳减完,再转也是可以的。

  • 資深大佬 : raymanr

    突然想起来了, timedelta 是由天数和秒数两个数值构成

    比如 timedelta(days=1,seconds=22)

    你访问的 seconds 属性只会返回秒数部分 22, 这是你代码有问题的地方

    所以需要调用 total_seconds() 方法

  • 主 資深大佬 : qazwsxkevin

    恍然大悟,total_seconds()
    感谢!!

  • 資深大佬 : shm7

    @qazwsxkevin 这还需要恍然大雾嘛。

    官方文档丢给你: https://docs.python.org/3.6/library/datetime.html
    直接取 timedelta 的 seconds 属性就行了。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具