У меня есть малиновый Pi 3, и я пишу код с помощью Python 3. Я добавил запрос в свой код, чтобы попросить пользователя ввести три номера, которые указывают если R, G или B включены или выключены (0 = выключено и 1 = включено). Например, 101 означает, что R = on, B = off и G = on.Ошибка во время запроса целых чисел, связанных с RGB LED на Raspberry Pi
Я же получаю сообщение об ошибке, что я думаю, что это связано с версией Python, который я использую (Python 3):
TypeError: object of type 'int' has no len()
Я был следующий учебник YouTube здесь: Controlling a RGB LED with a raspberry pi
import time
import RPi.GPIO as GPIO
R = 16
G = 20
B = 21
GPIO.setmode(GPIO.BCM)
GPIO.setup(R,GPIO.OUT)
GPIO.setup(G,GPIO.OUT)
GPIO.setup(B,GPIO.OUT)
GPIO.output(R,GPIO.HIGH)
GPIO.output(G,GPIO.HIGH)
GPIO.output(B,GPIO.HIGH)
def clearCh():
GPIO.cleanup(R)
GPIO.cleanup(G)
GPIO.cleanup(B)
try:
while True:
request = input("RGB-->")
if (len(request) == 3):
GPIO.output(R, int(request[0]))
GPIO.output(G, int(request[1]))
GPIO.output(B, int(request[2]))
except KeyboardInterrupt:
clearCh()
Любые советы, указывающие на меня в правильном направлении, будут высоко оценены.
Обратите внимание, я также попробовал следующее: if (len(str(request)) == 3):
который дал следующую ошибку:
TypeError: 'int' object has no attribute '__getitem__'
Спасибо Гэри. В этом есть смысл. Спасибо, что нашли время ответить. Он работал после внесения этих изменений. – theAussieGuy