首页 > 解决方案 > 切换状态以在 Python 中使用按钮触发功能 - 虽然循环打开和关闭

问题描述

我正在尝试使用一个按钮(在本例中为 Amazon Dash 按钮)来触发两个功能 - 即,一旦它激活一个功能就按下,再次按下会激活另一个。

我尝试为按钮设置一个状态,然后将状态从 False 更改为 True,但 while 循环似乎只是重复触发操作以打开和关闭。

我怀疑这是因为循环要开始了,看到状态默认设置为 False 然后从那里开始。但是,当我试图弄清楚我需要将状态放在哪里以便它工作时,我被卡住了。

到目前为止,这是我的代码的相关部分:

def button_pressed_dash():
try:
    socket_on = False
    while True:
        if not socket_on:
            both_on()
            socket_on = True
        elif socket_on:
            both_off()
            socket_on = False
        time.sleep(5)
except (KeyboardInterrupt, SystemExit):
    os._exit(1)

标签: pythonraspberry-pi

解决方案


推荐阅读