我是python的新手,我已经为我的Raspberry Pi上的GPIO引脚编写了一些代码,但当我运行它时,我得到的结果是:
user@pi:~$ sudo python change.py
Which GPIO do you whant to change? 13
Exit (y/n) n
Traceback (most recent call last):
File "change.py", line 36, in <module>
runGPIO()
File "change.py", line 31, in runGPIO
var_input2 = input ("Exit (y/n) ")
File "<string>", line 1, in <module>
NameError: name 'n' is not defined因为我是python的新手,所以我似乎找不到任何错误-即使使用错误检查器,所以我有点困惑代码是...
import sys
import RPi.GPIO as GPIO
GPIO.setup(13, GPIO.OUT)
GPIO.setup(15, GPIO.OUT)
GPIO.setup(16, GPIO.OUT)
GPIO.output(13, True)
GPIO.output(15, True)
GPIO.output(16, True)
var13 = True
var15 = True
var16 = True
def runGPIO():
var_input = input ("Which GPIO do you whant to change? ")
if (var_input == 13) or (var_input == 2):
if var13 == True:
GPIO.output(13, False)
else:
GPIO.output(13, True)
elif (var_input == 15) or (var_input == 3):
if var15 == True:
GPIO.output(15, False)
else:
GPIO.output(15, True)
elif (var_input == 16) or (var_input == 4):
if var16 == True:
GPIO.output(16, False)
else:
GPIO.output(16, True)
else:
print "Please enter a valid GPIO pin number"
var_input2 = input ("Exit (y/n) ")
if var_input2 == "y":
sys.exit()a
else:
return
runGPIO()代码设置为3个GPIO引脚(这将打开它们)。然后,在询问用户打开或关闭哪个LED之前,代码会关闭所有LED
任何关于改进等方面的帮助建议都将不胜感激
谢谢
发布于 2012-08-06 04:40:44
看起来您使用的是Python 2.x,只要是2.7.3就可以了。
在2.x版本中,如果要抓取文本,则需要使用raw_input("Enter (y/n): ")。
此版本中的input()将计算输入。
发布于 2012-08-06 03:56:26
2.x中的input()将其输入解释为Python代码。请改用raw_input()。
https://stackoverflow.com/questions/11819594
复制相似问题