私は本当にそれが私が思うように動作していない理由を理解するのに苦労しています。印刷機能が遅れるのはなぜですか?
編集:ご迷惑をおかけして申し訳ございませんが、実行されないのは最初のprint
です。 print('The alarm will sound at ' + result, flush=True)
if time.strftime('%H:%M') == result
がTrueになるまで何も起こりません。印刷機能をどこに置いても、上記が満たされるまで実行されません。 while
ループ内であっても、はが実行されません。
#! /usr/bin/python
import argparse
import time
import datetime
def alarm(set_time):
set_time = str(set_time)[:2]+ ':' + str(set_time)[2:]
alarm_time = datetime.datetime.strptime(set_time,'%H:%M').strftime('%H:%M')
return alarm_time
def main():
parser = argparse.ArgumentParser()
parser.add_argument('wake', help='The time for the alarm to sound', type=str)
args = parser.parse_args()
result = alarm(args.wake)
print('The alarm will sound at ' + result, flush=True)
while True:
if time.strftime('%H:%M') == result:
print('Wake up')
return
else:
time.sleep(1)
pass
if __name__ == '__main__':
main()
アイデアではないですか?私は...現在の時刻がアラームが鳴っている時間と一致するまで何も起こりませんか?ダニー...多分私は何かを欠いている... – BorrajaX
ハングアップ;指定した時刻にアラームがアクティブにならない、または指定された時刻にのみアラームがアクティブになるということですか? – TigerhawkT3
申し訳ありませんが、私は2番目の 'print'を忘れていました。書き直す。 これは、上記がTrueになるまで実行されない最初の 'print'です。 –