我有一个读取模拟数据的代码,我将其打印出来就像数字(ON,OFF)。当状态为ON时,我在屏幕上看到多个ON;当它关闭时,我在屏幕上看到多个OFF。阅读后,我会将数据传输到Google Spreadsheets。所以我只需要在状态发生变化时进行转移。我在这里骑了一些话题,但我没找到我想要的东西。如果我找到解决方案,我认为这对人们有帮助。
这是我的代码:
while True:
if sensor > 1.60:
Status = 'ON'
else:
Status = 'OFF'
print("Status : {}".format(Status))
我在 Status ='ON'下面尝试了 break 命令,但这不是一个好的解决方案。
答案 0 :(得分:1)
试试吧?你需要在开头
初始化preStatus ='ON'if sensor > 1.60:
Status = 'ON'
else:
Status = 'OFF'
if preStatus!=Status:
print("Status : {}".format(Status))
preStatus=Status
答案 1 :(得分:1)
根据您的要求,这是我的建议。它与其他人发布的内容非常相似,除了这里我已经明确地显示了初始化和循环。唯一缺少的是更新sensor
的代码。
prev_Status = None
while True:
if sensor > 1.60:
Status = 'ON'
else:
Status = 'OFF'
if Status != prev_Status:
print("Status : {}".format(Status))
prev_Status = Status
答案 2 :(得分:0)
每次检查输入时,只需添加另一个更新和引用的变量。
if sensor > 1.60 and previous_status == 'OFF:
Status = 'ON'
previous_status = 'ON'
elif sensor <= 1.60 and previous_status == 'ON':
Status = 'OFF'
previous_status = 'OFF'
希望这会有所帮助。