![](/img/trans.png)
[英]Python comparing to different time values to get time delta in minutes
[英]Comparing a time delta in python
我有一個<type 'datetime.timedelta'>
變量,我想將它與某些值進行比較。
讓我們說d產生這個datetime.timedelta
值0:00:01.782000
我想比較一下:
#if d is greater than 1 minute
if d>1:00:
print "elapsed time is greater than 1 minute"
我試過轉換datetime.timedelta.strptime()
但似乎確實有效。 是否有更簡單的方法來比較這個值?
您必須使用指定的時間創建一個新的timedelta
:
d > timedelta(minutes=1)
或者這個略微更完整的腳本將有助於詳細說明:
import datetime
from time import sleep
start = datetime.datetime.now()
sleep(3)
stop = datetime.datetime.now()
elapsed = stop - start
if elapsed > datetime.timedelta(minutes=1):
print "Slept for > 1 minute"
if elapsed > datetime.timedelta(seconds=1):
print "Slept for > 1 second"
輸出:
Slept for > 1 second
你只需要從頭創建timedelta
對象,之后的比較是微不足道的:
>>> a = datetime.timedelta(minutes=1)
>>> b = datetime.timedelta(minutes=1, seconds=1)
>>> a < b
True
>>> a > b
False
如果我錯了,請糾正我,但我認為你也可以使用以下內容:
代替
if elapsed > datetime.timedelta(seconds=1):
你可以說
if elapsed.seconds > 1:
if d.total_seconds() > 60:
print("elapsed time is greater than 1 minute")
但它需要python 2.7+
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.