我是Python的新手,我刚开始了解基础知识。 我试图在一个循环中运行一个脚本来检查温度,如果外部温度高于内部或相反,该函数应该打印一次并继续检查每5秒,更改状态。 我发现了一个非常有用的类似questions,但是如果我执行代码它打印外部温度更高,接下来我加热内部传感器并打印它内部更高,所有好,除了它没有'继续,循环工作,但它不能识别下一个状态的变化。 。
{{1}}
答案 0 :(得分:0)
打印相应的消息后,标志 printed_in 和 printed_out 都设置为 True 。您没有将它们设置回 False ,因为 if 条件将永远不会得到满足,并且邮件将永远不会再次打印。您应该在 if 块中将 printed_out 设置为 False ,其中内部温度更高 在 if 块中将 printed_in 设置为 False
答案 1 :(得分:0)
if outside > inside and not printed_out:
printed_out = True
print "outside is higher then inside"
print outside
printed_in = False
if outside < inside and not printed_in:
printed_in = True
print "inside is higher then outside"
print inside
printed_out = False
time.sleep(5)