我想在我的网站上发布一些帖子之后有一些聪明的日期(“从那以后的几秒钟,从那以后的几个小时,以及之后的几周......”)我正在使用utcnow和utc之间的datetime.timedelta差异存储在数据库中的帖子。
看起来,根据文档,我必须使用days属性和seconds属性来获取我想要的花哨日期字符串。
难道我不能在任何时间进入我希望整个差异的价值单位吗?我错过了什么吗?
如果我能在几秒钟内得到完整的差异,那将是完美的。
答案 0 :(得分:21)
似乎Python 2.7引入了total_seconds()方法,我相信这就是你想要的方法!
答案 1 :(得分:15)
您可以以秒为单位计算差异。
total_seconds = delta.days * 86400 + delta.seconds
不,你不是“缺少某些东西”。它不会在几秒钟内提供增量。
答案 2 :(得分:5)
如果我能在几秒钟内得到完整的差异,那将是完美的。
“时间”模块提供的普通 - unix-timestamp可能更符合您的口味。
我个人还没有被'datetime'中的很多内容所信服。
答案 3 :(得分:5)
就像bobince所说,你可以使用时间戳,如下所示:
# assuming ts1 and ts2 are the two datetime objects
from time import mktime
mktime(ts1.timetuple()) - mktime(ts2.timetuple())
虽然我认为这比仅仅计算timedelta
对象的秒数更加丑陋......