Adafruit_DHT 不适用于 python 3 Raspberry Pi 3 B

Adafruit_DHT not working for python 3 Raspberry Pi 3 B

这就是我所做的:

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 link 本身中给出的。我这样做了,我的代码在 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

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

由于您使用的是Python3,请使用正确的命令安装库:

sudo python3 setup.py install

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

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