2014-02-10 3 views
0

Можете ли вы сказать мне, где синтаксическая ошибка в этом коде?ошибка синтаксиса в коде python

import RPi.GPIO as GPIO 

GPIO.setmode(GPIO.BOARD) 

GPIO.setup(4, GPIO.IN) 

try: 
    while True: 
     if (GPIO.input(4) == 1): 
      print "button pressed" 
     else: 
      print "he" 
GPIO.cleanup() 

это кнопка должна печатать нажимается, когда GPIO штифт на мой малиновый пи получает силу, когда кнопка на плате нажата. но я получаю ошибку все время, когда я запускаю код в консоли под управлением raspbian. большинство ошибок говорят «недействительный синтаксис» и последняя кодовая строка скрипта.

+0

Заполните полную ошибку, которую вы получаете. – Carpetsmoker

ответ

2

У вас есть try без оговорки except. Вам нужно что-то наподобие:

try: 
    while True: 
     if (GPIO.input(4) == 1): 
      print "button pressed" 
     else: 
      print "he" 
except: 
    # handle exception here 
    pass # if you want to ignore it 
GPIO.cleanup() 
+0

Да, синтаксическая ошибка исчезла. отлично, но я получил это: RuntimeError: Нет доступа к/dev/mem. Попробуйте запустить как root! Я попытался запустить как root, но все же эта ошибка – Crag

+0

Это другая проблема, и я не могу помочь вам с этим. Вам нужно задать новый вопрос. –

Смежные вопросы