在使用python3和Berryconda3运行Raspberry Pi Zero W的Raspberry Pi Zero W上没有名为“Adafruit_DHT”的模块

2024-10-01 07:34:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我用的是树莓派零瓦,我连接了一个来自阿达弗瑞特的DHT11传感器。在设置我的Raspberry Pi时,我试图安装miniconda3来管理python包。不知怎么的,我无法安装miniconda3(我猜miniconda3在Raspberry Pi Zero W上不受支持)。但是,我成功地安装了berryconda3。为了从传感器读取数据,我安装了Adafruit_DHT库(在python2和python3中)。我可以用python2从传感器读取数据,但在python3中却无法读取。使用导入库时

import Adafruit_DHT

它总是显示以下错误消息:没有名为“Adafruit_DHT”的模块。在

对于python3的安装,我从github.com/adafruit/adafruit_Python_DHT,把它复制到我的覆盆子上,然后用sudo python3安装它设置.pyinstall—强制pi。当我尝试使用pip3 install Adafruit_DHT安装它时,控制台会回复:pip3:command not found。当使用pip install Adafruit_DHT时,控制台答复:“收集Adafruit_DHT无法找到满足要求的版本(来自版本:)找不到与Adafruit_DHT匹配的发行版。”

当我试图找到库时,我发现了以下三个可能的模块安装位置:

~/berryconda3/lib/python3.6/-->;此位置没有Adafruit目录

/usr/local/lib/python3.5/dist-packages-->;目录Adafruit_DHT-1.3.2-py3.5-linux-armv61.egg

/usr/local/lib/python2.7/dist-packages-->;目录Adafruit_DHT-1.3.2-py2.7-linux-armv61.egg

python3返回以下信息的命令:

^{pr2}$

在/home/pi/berryconda3/bin/python3中运行命令pip3 freeze时,它不起作用(回复:-bash:pip3:command not found)。但是pip freeze起作用了。我在/home/pi/berryconda3/bin中运行命令,它得到了一个包含我安装的所有其他库的列表(这里列出的那些库都可以在我的脚本中使用)。但Adafruit_DHT没有列出。在

我想问题如下:当调用python2时,脚本在/usr/local/lib/python2.7/dist-packages文件夹中查找Adafruit_DHT库,并可以找到它。当我调用python3时,脚本在~/berryconda3/lib/python3.6文件夹中查找Adafruit_DHT库(因为我安装了berryconda3)。它会在/usr/local/lib/python3.5/dist-packages中找到它。在

现在的问题是如何将包安装在/home/pi/berryconda3/bin/python3中?在

我试图将Adafruit_DHT-1.3.2-py3.5-linux-armv61.egg从/usr/local/lib/python3.5/dist-packages复制到~/berryconda3/lib/python3.6/

sudo mv Adafruit_DHT-1.3.2-py3.5-linux-armv6l.egg  ~/berryconda3/lib/python3.6/Adafruit_DHT-1.3.2-py3.5-linux-armv61.egg

在复制之后,我仍然得到同样的错误。在

我还尝试使用以下命令安装从github下载的Adafruit_Python_DHT包:

sudo python3 setup.py install --install scripts=~/berryconda3/bin/lib/python3.6/site-packages

安装运行成功,但我的脚本仍然找不到库。在

如果我尝试在~/berryconda3/bin中运行“pip install Adafruit_Python_DHT”,则输出是:使用缓存的Adafruit_Python_DHT-1.1.2收集Adafruit_Python_DHT。焦油gz命令python的完整输出设置.pyegg_info:[..]import platform_detect ModuleNotFoundError:没有名为“platform_detect”的模块。根据这里的一个帖子: https://github.com/adafruit/Adafruit_Python_DHT/pull/67,pip中列出的Adafruit_Python_DHT库尚未工作。所以这似乎是我不能用pip安装它的原因。。。在

我花了至少10个小时在网上寻找解决方案,并按照很多网站上的建议,用python3重新安装了Adafruit库,但还是不起作用。有什么想法吗?在


Tags: installpip命令adafruitbinegglinuxlib
2条回答

下载git存储库后https://github.com/adafruit/Adafruit_Python_DHT

我必须先进入Adafruit_Python_DHT,然后才是Python设置.py安装

第一步:克隆Adafruit https://github.com/adafruit/Adafruit_Python_DHT

步骤2:进入Adafruit_Python_DHT目录 cd Adafruit_Python_DHT的cd

步骤3(在命令行下面添加) python设置.py安装

我在这方面遇到了麻烦,试图在这里找到答案。最后我使用了python3命令而不是python命令,它不再停止在“import Adafruit_DHT”命令处

相关问题 更多 >