以前にも似たような質問をしたことがありますが、今回は少し違います。私には、次のコードが機能するはずです。
import datetime
# run infinitly
while(True):
done = False
while(not done):
#
#main program
#
#stopping condition
if currenttime == '103000':
done = True
#continue with rest of program
ただし、午前 10:30:00 になると、プログラムの残りの部分は続行されません。
私が知っている次のプログラムは(ラズベリーパイで)動作します:
import datetime
done = False
while not done:
currenttime = datetime.datetime.now().strftime('%H%M%S')
if currenttime != '103000':
print currenttime
if currenttime == '103000':
done = True
print 'It is 10:30:00am, the program is done.'
その最初の例で私がしたことは、私にとって論理的に意味がありました。そのループを終了して残りを続行しない理由を誰かが知っていますか?