通过Python中的按钮切换状态以触发函数-但会循环打开和关闭
我试着用一个按钮,在这个例子中是一个Amazon Dash按钮,来触发两个功能——也就是说,一旦它激活了一个功能,按下一次就会激活另一个功能 我曾尝试将状态设置为按钮,然后将状态从False更改为True,但while循环似乎只是重复触发操作以打开和关闭 我怀疑这是因为循环即将开始,看到状态默认设置为False,然后从那里开始。然而,当我试图找出我需要把状态放在哪里才能工作时,我被卡住了 以下是我迄今为止代码的相关部分:通过Python中的按钮切换状态以触发函数-但会循环打开和关闭,python,raspberry-pi,Python,Raspberry Pi,我试着用一个按钮,在这个例子中是一个Amazon Dash按钮,来触发两个功能——也就是说,一旦它激活了一个功能,按下一次就会激活另一个功能 我曾尝试将状态设置为按钮,然后将状态从False更改为True,但while循环似乎只是重复触发操作以打开和关闭 我怀疑这是因为循环即将开始,看到状态默认设置为False,然后从那里开始。然而,当我试图找出我需要把状态放在哪里才能工作时,我被卡住了 以下是我迄今为止代码的相关部分: def button_pressed_dash(): try: s
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)
请说明
都开()
和都关()
有什么作用。我不想包括在内,因为这会使示例无限大。出于这个原因,它可以说print(“Both on”)
,因为我知道函数可以工作,但是循环似乎被破坏了,因为我相信变量是在循环之前设置的,所以每次都会重置状态。这有用吗?