簡體   English   中英

如何在python中修復無限循環

[英]How to fix infinite loop in python

我剛開始使用python和RPi。 但我堅持:DI有4個微動開關,幾乎沒有可能性(BC1,BC2,BC3等)。 例如,如果我們選擇可能性BC1,那么微動開關1(btn1)和2(btn2)必須處於活動狀態,如果是,則ledG1和vazduh處於活動狀態。 另外,我還需要有一個可能的位置才能插入另一個位置(BC1,BC2,BC3),直到我們插入另一個位置才必須處於活動狀態(如果請求的開關處於活動狀態)。

有了這段代碼,它就可以了,但是只問我一次插入的可能性。

BC1 = '1'
BC2 = '2'
BC3 = '3'
BC4 = '4'
BC5 = '5'

def compare ():
    while True:
        Barcode = input("Insert barcode: ")
        while Barcode == BC1:
            if GPIO.input(btn1)==0 and GPIO.input(btn2)==0:
                GPIO.output(vazduh, GPIO.HIGH)
                GPIO.output(ledG1, GPIO.HIGH)
                continue
            else:
                GPIO.output(vazduh, GPIO.LOW)
                GPIO.output(ledG1, GPIO.LOW)
                continue                
        while Barcode == BC2:
            if GPIO.input(btn2)==0 and GPIO.input(btn4)==0:
                GPIO.output(vazduh, GPIO.HIGH)
                GPIO.output(ledG3, GPIO.HIGH)
                continue
            else:
                GPIO.output(vazduh, GPIO.LOW)
                GPIO.output(ledG3, GPIO.LOW)
                continue


compare ()

我認為您可能想在第一時間范圍內使用if而不是while

while True:
   Barcode = input("Insert barcode: ")
   if Barcode == BC1:
      #Do something #1
   if Barcode == BC2:
      #Do something #2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM