Adafruit_DHT不适用于python 3 Raspberry Pi 3 B.

时间:2018-05-22 09:44:34

标签: python python-3.x raspberry-pi raspberry-pi3 adafruit

这就是我所做的:

git clone https://github.com/adafruit/Adafruit_Python_DHT.git

cd Adafruit_Python_DHT

sudo apt-get install build-essential python-dev

sudo python setup.py install

这个^是在github链接本身中给出的。我这样做了,我的代码与python 2.x中的DHT11传感器完美配合但是它与python 3失败了。我得到的错误是:

RuntimeError: Error accessing GPTO. Make sure program is run as root with sudo!

我的代码是:

import Adafruit_DHT
import time

while True:
    time.sleep(1)
    humidity, temperature = Adafruit_DHT.read_retry(Adafruit_DHT.DHT11,4)
    print(temperature)
    print(humidity)

与python 2完美配合,问题在于python 3.我使用Raspberry Pi3 B作为GPIO接口。

编辑: 我试过sudo python temper.py 并且它再次起作用,但sudo python3 temper.py仍然无法正常工作,只需做一个小改动,它就不会给出任何错误,但现在输出

None
None
None
None
基本上,'没有'出现在温度和湿度的传感器值的位置。

2 个答案:

答案 0 :(得分:2)

请使用Python 3,因为使用Python 3安装库:

sudo python3 setup.py install

答案 1 :(得分:0)

对于Python3,您需要在打印文字后使用方括号。

print('Temp: {0:0.1f} C  Humidity: {1:0.1f} %'.format(temperature, humidity))