Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-如何计算从X日期起经过的时间?_Python_Elapsedtime - Fatal编程技术网

Python-如何计算从X日期起经过的时间?

Python-如何计算从X日期起经过的时间?,python,elapsedtime,Python,Elapsedtime,我有一个包含文章的数据库表,每一篇文章都有一个提交日期。我需要计算文章在数据库中发表后的天数和小时数,如: This article has been published 4 hours ago. This article has been published 3 days and 4 hours ago. 已经有一些代码可以重用来完成这项工作了吗?我在谷歌上搜索过,但可能我用的词不对 有什么线索可以帮我吗 致以最诚挚的问候,我会将提交的日期转换为日期时间,然后使用类似的方法将日期时间转换为人

我有一个包含文章的数据库表,每一篇文章都有一个提交日期。我需要计算文章在数据库中发表后的天数和小时数,如:

This article has been published 4 hours ago.
This article has been published 3 days and 4 hours ago.
已经有一些代码可以重用来完成这项工作了吗?我在谷歌上搜索过,但可能我用的词不对

有什么线索可以帮我吗


致以最诚挚的问候,

我会将提交的日期转换为
日期时间
,然后使用类似的方法将
日期时间
转换为人性化字符串。

看看,它有您需要的一切


当你从另一个日期时间中减去一个日期时间,你会得到一个
timedelta
对象。您可以使用
total_seconds()
以秒为单位获取持续时间,并使用除法将其转换为小时和天。然后,您唯一的工作就是将其格式化为可读的字符串。

FWIW,str()在datetime.timedelta对象上调用。timedelta对象会创建一个格式类似“4天,23:58:57.256000”的字符串。我认为没有办法更改格式,但如果格式可以接受,则可以为您节省一些工作。回答很好,但是请注意,timedelta类的相关方法是total_Seconds Downvotor:你能解释一下为什么你认为这是一个糟糕的答案,这样我可以改进我未来的答案吗?嗨。代码的第9行有一个简单错误。它说:
dt=otherdate-now
,但实际上应该是另一种方式。也许这就是选民投票反对的原因。