我试图编写一个脚本,该脚本会将dht 11传感器数据输出到.txt
文件中。
我查看了为Adafruit库指定的standard examples。
我的代码:
import time
import Adafruit_DHT
# infinite while loop
while True:
sensor = Adafruit_DHT.DHT11
pin = 4
humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)
if humidity is not None and temperature is not None:
print('Temp={0:0.1f}* Humidity{1:0.1f}%'.format(temperature,humidity))
else:
print('Failed to get reading. Try again!')
time.sleep(5)
当我使用Thonny IDE运行它时,出现以下错误消息:
Traceback (most recent call last):
File "/home/pi/Downloads/Sensor1/Adafruit_Python_DHT/examples/simpletest2loop.py", line 5, in <module>
import Adafruit_DHT
ImportError: No module named 'Adafruit_DHT'
我可以使用以下命令从终端读取传感器:
sudo ./AdafruitDHT.py 11 4
并在https://tutorials-raspberrypi.com/raspberry-pi-measure-humidity-temperature-dht11-dht22/
中列出了另一个脚本我做了一些研究,但我无法弄清楚,请问是否有人可以帮助我解决问题。
研究:
我尝试移动文件,但仍然无法正常工作
pi @ raspberrypi:〜/下载/ Sensor1 / Adafruit_Python_DHT / examples $ ls -altr 总共28
-rw-r--r-- 1 pi pi 2035 Jul 5 15:28 simpletest.py
-rwxr-xr-x 1 pi pi 5715 Jul 5 15:28 google_spreadsheet.py
drwxr-xr-x 10 pi pi 4096 Jul 5 15:28 ..
-rwxr-xr-x 1 pi pi 2340 Jul 6 13:19 AdafruitDHT.py
drwxr-xr-x 2 pi pi 4096 Jul 13 14:08 .
-rwxrwxrwx 1 pi pi 1037 Jul 13 14:19 simpletest2loop.py <code>
似乎它们属于同一用户和组。我是否需要将库复制到某个文件夹?
答案 0 :(得分:0)
如果找不到Python模块,最好的解决方法是检查:
因此,如果您想检查Python在哪里,可以运行以下命令:
python3 -c "import sys; print(','.join(sys.path))"
示例输出
/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python36.zip
/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6
/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload
/usr/local/lib/python3.6/site-packages
/usr/local/Cellar/numpy/1.14.3_1/libexec/nose/lib/python3.6/site-packages
然后确保您的模块位于其中一个位置,或添加到PYTHONPATH
中,以使其包括您安装模块的位置。
如果您以root
身份运行脚本,则还应该以{{1}}身份运行上面的代码。