如何在不中断程序的情况下使用用户输入停止while循环



如何无限循环5个led灯,一个接一个地打开,直到用户输入内容?我不希望用户输入中断循环。现在一切都很好,除了在循环的中间输入中断了程序。

import time
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
print("Press h to exit the program")
while True:
GPIO.setup(19,GPIO.OUT)
GPIO.output(19,True)
time.sleep(0.5)
GPIO.output(19,False)
GPIO.setup(26,GPIO.OUT)
GPIO.output(26,True)
time.sleep(0.5)
GPIO.output(26,False)
GPIO.setup(22,GPIO.OUT)
GPIO.output(22,True)
time.sleep(0.5)
GPIO.output(22,False)
GPIO.setup(27,GPIO.OUT)
GPIO.output(27,True)
time.sleep(0.5)
GPIO.output(27,False)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,True)
time.sleep(0.5)
GPIO.output(17,False)
x = input("")
if (x == "h"):
print("Exiting the program")
break
GPIO.setwarnings(False)
GPIO.cleanup()

您可以很容易地使用第三方keyboard库。

import keyboard
while True:
print(1)
print(2)
print(3)
print(4)
if keyboard.is_pressed("h"):
break

相关内容

  • 没有找到相关文章

最新更新