2017-09-13 191 views
-1

有人可以請我的代碼幫忙嗎?AttributeError:'模塊'對象沒有'pin'屬性

from pyA20.gpio import gpio 
from pyA20.gpio import port 

pins = ["PA7",'PA3','PG6'] 

gpio.init() 

for pin in pins: 
    led = port.PA7 
    gpio.setcfg(port.pin, gpio.OUTPUT) 
    gpio.output(port.pin, 1) 

我得到這個錯誤:

AttributeError: 'module' object has no attribute 'pin'

我認爲它缺少對固定屬性的命令。

+0

你的意思是做'gpio.setcfg(pin,gpio.OUTPUT)'? – MrPyCharm

+0

是的,也是gpio.output(port.pin,1) – Roman

+0

我的意思是你試圖在函數中傳遞循環變量'pin'? – MrPyCharm

回答

0

我無法在我的機器上安裝PYA20,所以我無法測試這個,但是,這可能適合您。您不能將字符串追加到對象。在Python中,getattr方法允許您使用字符串獲取對象的屬性。下面是它的外觀:

from pyA20.gpio import gpio 
from pyA20.gpio import port 

pins = ["PA7",'PA3','PG6'] 

gpio.init() 

for pin in pins: 
    led = port.PA7 
    current_port = getattr(port, pin) 
    gpio.setcfg(current_port, gpio.OUTPUT) 
    gpio.output(current_port, 1) 
相關問題