Python ImportError:没有名为mqtt的模块。客户端错误[paho mqtt]

Python ImportError:没有名为mqtt的模块。客户端错误[paho mqtt],python,pycharm,paho,Python,Pycharm,Paho,我试图在python项目中使用PAHOMQTT,我使用pycharm作为我的IDE。 我使用:pip install paho mqtt安装了paho mqtt,但似乎有些地方不对劲。因为当我部署以下脚本时: import paho.mqtt.client as mqtt # The callback for when the client receives a CONNACK response from the server. def on_connect(client, userdata,

我试图在python项目中使用PAHOMQTT,我使用pycharm作为我的IDE。 我使用:pip install paho mqtt安装了paho mqtt,但似乎有些地方不对劲。因为当我部署以下脚本时:

import paho.mqtt.client as mqtt

# The callback for when the client receives a CONNACK response from the server.
def on_connect(client, userdata, flags, rc):
    print("Connected with result code "+str(rc))

    # Subscribing in on_connect() means that if we lose the connection and
    # reconnect then subscriptions will be renewed.
    client.subscribe("/test")


# The callback for when a PUBLISH message is received from the server.
def on_message(client, userdata, msg):
    print(msg.topic+" "+str(msg.payload))

client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message

client.connect("localhost", 1883, 60)

# Blocking call that processes network traffic, dispatches callbacks and
# handles reconnecting.
# Other loop*() functions are available that give a threaded interface and a
# manual interface.
client.loop_forever()
正在给我以下错误:

/usr/bin/python2.7 /home/user/PycharmProjects/untitled/MQTT/paho.py
Traceback (most recent call last):
  File "/home/user/PycharmProjects/untitled/MQTT/paho.py", line 1, in <module>
    import paho.mqtt.client as mqtt
  File "/home/user/PycharmProjects/untitled/MQTT/paho.py", line 1, in <module>
    import paho.mqtt.client as mqtt
ImportError: No module named mqtt.client

Process finished with exit code 1
paho mqtt是已安装软件包的一部分

是否有人已经解决了这个问题


谢谢。

我以以下问题为例解决了这个问题:

使用以下方式安装paho mqtt: pip安装paho mqtt

在script.py目录中,我运行了以下命令:

ln-s/home/user/.local/lib/python2.7/site-packages/paho-paho ln-s/home/user/.local/lib/python2.7/site-packages/paho_mqtt-1.4.0.dist-info paho_mqtt-1.4.0.dist-info
这可能不是解决问题的正确方法,但其他方法都不起作用。

原因可能是

库paho已默认安装在文件夹/home/user/.local/lib/python2.7/site-packages中 但是 python在文件夹/usr/local/lib/python2.7/dist-packages中搜索此库。 dist和站点包之间的差异可参考


ln命令用于创建文件之间的链接。因此,该文件是从script.py目录引用的。

通过查看naff和Roshan的答案,在我的例子中,该软件包安装在python 3.7的Anaconda版本中的这个位置

/home/user/anaconda3/lib/python3.7/site-packages/paho 我使用了以下脚本:

sudo cp-r/home/user/anaconda3/lib/python3.7/site-packages/paho /home/user/.local/lib/python3.7/site-packages/
它解决了我的问题,我希望它能帮助别人。

pip freeze | grep paho的输出是什么?它是paho mqtt==1.4.0您的python脚本在cmdline中运行良好。我怀疑你和pycharm之间有路径问题。此链接可能有助于我检查pycharm中的路径。但是昨天我尝试从cmdline运行脚本:pythonscript.py,它给了我与pycharm相同的错误。