Python 无法运行paho mqtt客户端->&引用;ImportError:没有名为paho.mqtt.client的模块;
我正在尝试设置mqtt客户机,但遇到了一个问题: 我为泛美卫生组织安装了:Python 无法运行paho mqtt客户端->&引用;ImportError:没有名为paho.mqtt.client的模块;,python,mqtt,paho,Python,Mqtt,Paho,我正在尝试设置mqtt客户机,但遇到了一个问题: 我为泛美卫生组织安装了: pip install paho-mqtt 它说:成功安装了dnspython-1.15.0 paho-mqtt-1.3.1 python-etcd-0.4.5 urllib3-1.22 但是当我试图用sudo python listen.py调用我的python脚本时,它会说: File "listen.py", line 6, in <module> import paho.mqtt.client
pip install paho-mqtt
它说:成功安装了dnspython-1.15.0 paho-mqtt-1.3.1 python-etcd-0.4.5 urllib3-1.22
但是当我试图用sudo python listen.py
调用我的python脚本时,它会说:
File "listen.py", line 6, in <module>
import paho.mqtt.client as mqtt
ImportError: No module named paho.mqtt.client
文件“listen.py”,第6行,在
将paho.mqtt.client作为mqtt导入
ImportError:没有名为paho.mqtt.client的模块
当我输入python--version
时,它会说:python2.7.13
当我调用pip freeze
paho时,paho被列出paho mqtt==1.3.1
有什么问题吗?问题是库“paho”已安装(默认)在文件夹“/home/pi/.local/lib/python2.7/site packages”中,但“sudo python”在文件夹“/usr/local/lib/python2.7/dist packages”中搜索此库。 我用一个链接解决了这个问题: cd/usr/lib/python2.7/dist-packages sudo ln-s/home/pi/.local/lib/python2.7/site-packages/paho
现在,我的脚本也与“sudo”一起运行。一个快速解决方案是将库安装在特定目录中
cd <directory>
sudo pip install paho-mqtt -t ./
cd
sudopip安装paho mqtt-t/
您能否以普通用户身份运行python-c“import sys;print sys.path”
并使用sudo
检查输出是否不同?使用sudo
它会显示:['''/usr/lib/python2.7'、'/usr/lib/python2.7/plat arm linux gnueabihf'、'/usr/lib/python2.7/lib tk'、'/usr/lib/python2.7/lib old'、'/usr/lib/python2.7/lib dynload'、'/usr/local/lib/python2.7/dist packages/dist-packages'、'/usr/lib/python2.7/dist-packages/gtk:>[''/usr/lib/python2.7'、'/usr/lib/python2.7/plat arm linux gnueabihf'、'/usr/lib/python2.7/lib tk'、'/usr/lib/python2.7/lib old'、'/usr/lib/python2.7/lib dynload'、'/home/pi/.local/lib/python2.7/site-packages'、'/usr/local/lib/lib/python2.7/dist-packages'、'/usr/lib/python2.7/distk']
这解决了问题。谢谢。当默认安装了paho
时,应该如何安装它?sudo pip install paho mqtt
?否,请阅读以下内容: