如何从Python datetime中获取小时?

28 投票
2 回答
60830 浏览
提问于 2025-04-17 07:28

我有一个Python的日期时间对象d,我想要得到从午夜开始到现在的小时数,并且这个数字要是小数形式。到目前为止,我想到的办法是:

h = ((((d.hour * 60) + d.minute) * 60) + d.second) / (60.0 * 60)

这样的话,4:30am会得到4.5,6:45pm会得到18.75,等等。有没有更好的方法呢?

2 个回答

5
h = (d - d.replace(hour=0,minute=0,second=0)).seconds / 3600.

... 有更少的除法和/或乘法运算

42
h = d.hour + d.minute / 60. + d.second / 3600.

括号少了一些……

撰写回答