2016-09-10 7 views
0

私はPythonでwhileループを使用する方法を知らないので、特定の時間に達すると通知します。特定の時間に達すると通知するPythonのループwhile

from datetime import datetime 
import time 
import os 
now = datetime.now() 
end = 1 

while x == 1: 
    global end 
    if now.minute == *TIME*: 
     end = 0 

print ("Notification") 
+1

whileループの使い方は分かりませんが、非常に基本的な質問です... – karan

答えて

0

あなたが尋ねたものの私の解釈:

import datetime, time 

def delay(end_time): 
    while datetime.datetime.now() < end_time: 
    time.sleep(.1) # wait .1 seconds before continuing 

start_time = datetime.datetime.now() 
end_time = start_time + datetime.timedelta(seconds=60) # add 60 seconds 
delay(end_time) 
print('done') 

を私はあなたが何をしていたことで少し混乱していました。注目すべきことは、whileループでequalsの代わりに、より小さい値を使用することです。 equalsを使用すると、指定した時刻にコードが評価された場合にのみ終了します(これは起こりにくいので、あなたは永遠にループに詰め込まれます)。しかし、あなたが最初に出ることができるよりも少なくて、あなたは十分に長く待っていたことに気づくでしょう。あなたはこれだけをtime.sleep(60)と置き換えることができます。

関連する問題