2017-03-01 13 views
-2

我正在編寫一個連續運行的Python腳本,只有當它確定當前時間在兩個日常時間之間時才執行其某些功能。具體來說,該腳本有兩個命令行參數,它們都是HHMM格式,其中HH是每日開始時間,MM是分鐘並且是UTC。因此,例如,腳本可能被告知運行一整天(0900,1700),或者它可能被告知運行整夜(2200,0700)。Python腳本如何確定當前時間在兩個給定每日時間之間?

給出這樣的參數 - 指定可能在當天和第二天的時間 - 是否有一些直接的方法(可能使用datetime模塊)讓腳本知道當前時間是在這兩者之間次?

+2

是。現在你只需要編碼。 – blacksite

+0

考慮['datetime.time'](https://docs.python.org/2/library/datetime.html#time-objects) –

回答

0

從您的參數+今天的日期構造兩個日期時間對象。

如果「稍後」的一個小於先前的那個,則在稍後的時間添加一天。它現在應該比早些時候更大。

然後比較當前時間,看它是否大於早期時間,小於晚期時間。

0

的開始和結束可被表示爲元組:

start = (9, 0) 
end = (17,0) 

now = datetime.datetime.utcnow().timetuple()[3:5] # gives you (hour,min) 
print start <= now <= end 
相關問題