253

これを行うには、もっと簡単な方法が必要です。頻繁に更新したいオブジェクトがあるので、オブジェクトがいつ作成されたかを記録し、現在のタイムスタンプと照合して、必要に応じて更新したいと考えています。

datetime.datetime は難しいことがわかっているので、ctime ライブラリに飛び込みたくありません。この種のことを簡単にするものはありますか?

4

7 に答える 7

42
import time  
current = time.time()

...job...
end = time.time()
diff = end - current

それはあなたのために働くでしょうか?

于 2010-12-06T01:34:18.917 に答える
16
>>> from datetime import datetime

>>>  a = datetime.now()

# wait a bit 
>>> b = datetime.now()

>>> d = b - a # yields a timedelta object
>>> d.seconds
7

(7は少し上で待った時間になります)

datetime.datetime はかなり便利だと思いますので、複雑なシナリオや厄介なシナリオが発生した場合はお知らせください。

編集: @WoLpH に感謝します。必ずしも頻繁に更新する必要があるとは限らないため、日時が互いに近くなります。デルタの日数を考慮することで、より長いタイムスタンプの不一致を処理できます。

>>> a = datetime(2010, 12, 5)
>>> b = datetime(2010, 12, 7)
>>> d = b - a
>>> d.seconds
0
>>> d.days
2
>>> d.seconds + d.days * 86400
172800
于 2010-12-06T01:38:12.967 に答える