Python - Как рассчитать время, прошедшее с даты X? - PullRequest
6 голосов
/ 22 ноября 2011

У меня есть таблица базы данных со статьями, и у каждой из этих статей есть отправленная дата.Мне нужно рассчитать дни и часы с момента публикации статьи в базе данных, например:

This article has been published 4 hours ago.
This article has been published 3 days and 4 hours ago.

Уже есть код, который я могу использовать повторно, чтобы сделать это?Я искал в Google, но, возможно, я не использую правильные слова.

Любая подсказка, которая может мне помочь?

С наилучшими пожеланиями,

Ответы [ 2 ]

9 голосов
/ 22 ноября 2011

Посмотрите на пакет datetime , в нем есть все необходимое.

когда вы вычитаете одну дату из другой, вы получаете timedelta объект. Вы можете использовать total_seconds(), чтобы получить длительность в секундах и использовать деление, чтобы преобразовать ее в часы и дни. Тогда ваша единственная задача - отформатировать ее в читаемую строку.

4 голосов
/ 22 ноября 2011

Я бы преобразовал отправленную дату в datetime, а затем использовал бы что-то вроде https://gist.github.com/207624, чтобы преобразовать datetime в гуманизированную строку.

...