2011-11-21 10 views
5

私は記事を含むデータベーステーブルを持っており、この記事のそれぞれに提出された日付があります。私はこれを行うために再利用することができますいくつかのコードが既にありますPython - X日付からの経過時間を計算するには?

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

:私は次のように、データベースに掲載されている記事以来の日と時間を計算する必要がありますか?私はGoogleで検索しましたが、正しい単語を使用していない可能性があります。

私を助ける手掛かりはありますか?

よろしく、

答えて

9

datetime packageをご覧ください。必要なものがすべてあります。

別の日時から1つ減算すると、timedeltaオブジェクトが得られます。 total_seconds()を使用すると、時間を秒単位で取得し、除算を使用して時間と日に変換することができます。それから、唯一の仕事は、それを読み込み可能な文字列にフォーマットすることです。

+0

datetime.timedeltaオブジェクトで呼び出されたFWIW、str()は、 '4 days、23:58:57.256000'のようにフォーマットされた文字列を作成します。フォーマットを変更する方法はないと思いますが、容認できるフォーマット。 – Jeremiah

+0

優れた答えですが、timedeltaクラスの関連メソッドはtotal_secondsであることに注意してください。 –

+0

@ ShmilTheCat、それに気づいてくれてありがとう、私は修正を行いました。 –

4

私はその後、ヒト化文字列にdatetimeを変換するhttps://gist.github.com/207624のようなものを使用し、datetimeに提出された日付を変換したいです。

+1

Downvoter:なぜこれが貧弱な答えだと思うかを説明して、将来の回答を改善することができますか? –

+0

こんにちは。コードの9行目に単純なエラーがあります。それは言う: 'dt = otherdate - 今'しかし本当に別の方法の周りにする必要があります。おそらく、それがダウン投票者が投票する理由だったのかもしれない。 – Firebowl2000

関連する問題