从浮点数中获取Python的日期时间

46 投票
5 回答
150295 浏览
提问于 2025-04-16 21:36

在Python中,怎么把一个float类型的数字转换成datetime类型呢?

比如,我有一个浮点数43111.0,我想把它转换成datetime格式。

5 个回答

13

在编程中,有时候我们会遇到一些问题,可能是因为代码写得不够好,或者是我们对某些概念理解得不够透彻。比如,有些人可能在使用某个特定的库或工具时,遇到了错误或者不明白怎么用。这种情况下,大家通常会去网上查找解决方案,像StackOverflow这样的论坛就是一个很好的地方。在那里,很多有经验的程序员会分享他们的经验和解决方案,帮助其他人解决问题。

如果你在学习编程,遇到问题时,不妨去看看这些论坛,可能会找到你需要的答案。同时,也要记得多尝试,多实践,慢慢你就会对这些技术有更深的理解。

import datetime, time

print datetime.datetime.fromtimestamp(time.time())
print datetime.datetime.fromtimestamp(43111.0)
27

试试这个:

from datetime import datetime

datetime.fromtimestamp(*your_timestamp_here*).strftime('%Y-%m-%d')
63

这看起来像是Excel中的日期时间格式,叫做序列日期。下面是一个简单粗暴的方法来转换它:

>>> import datetime
>>> serial = 43111.0
>>> seconds = (serial - 25569) * 86400.0
>>> datetime.datetime.utcfromtimestamp(seconds)
datetime.datetime(2018, 1, 11, 0, 0)

撰写回答