如何在python中等待直到释放按钮

如何在python中等待直到释放按钮,python,raspberry-pi,Python,Raspberry Pi,是否可以在按住按钮时暂停python脚本,然后在释放该按钮时启动?(我将按钮连接到我的Raspberry Pi上的GPIO引脚)我假设您使用的按钮位于GPIO18中,因此您可以使用此代码 import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) GPIO.setup(18, GPIO.IN, pull_up_down=GPIO.PUD_UP) while True: input_state = GPIO.input(18)

是否可以在按住按钮时暂停python脚本,然后在释放该按钮时启动?(我将按钮连接到我的Raspberry Pi上的GPIO引脚)

我假设您使用的按钮位于GPIO18中,因此您可以使用此代码

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)

GPIO.setup(18, GPIO.IN, pull_up_down=GPIO.PUD_UP)

while True:
    input_state = GPIO.input(18)
    while not input_state:
        # as soon as your button is pressed you
        # will be inside this loop
        print('Button is being pressed')
或者,您也可以尝试:

import time
import RPi.GPIO as GPIO

PIN = 18

GPIO.setmode(GPIO.BCM)
GPIO.setup(PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP)

while True:
    GPIO.wait_for_edge(PIN, GPIO.FALLING)
    print "Pressed"
    # your code
我认为第二个目标更准确地针对您的请求。

您看过了吗?它使与GPIO的交互更加简单

from gpiozero import Button

button = Button(2)

button.wait_for_press()    
button.wait_for_release()
print("Button was pressed and released")
下面是Button类的链接:

以及如何使用它的示例:

到目前为止,您是否有任何代码?是的,可能有。