[英]Installed package via pip, but ModuleNotFoundError
好的,所以我在 Windows 機器上,想使用paho-mqtt包。 下載了官方的Python 3安裝程序msi文件,並安裝了python 3,我不記得在此之前安裝過任何python。
>python --version
Python 3.8.1
接下來,通過pip
安裝paho-mqtt
>pip install paho-mqtt
Collecting paho-mqtt
Using cached https://files.pythonhosted.org/packages/59/11/.../paho-mqtt-1.5.0.tar.gz
Installing collected packages: paho-mqtt
Running setup.py install for paho-mqtt ... done
Successfully installed paho-mqtt-1.5.0
通過pip3
嘗試了相同的命令,它說已經安裝了包。
但是當我import paho.mqtt.client as mqtt
以下錯誤
Traceback (most recent call last):
File "C:\mqt\paho.py", line 2, in <module>
import paho.mqtt.client as mqtt
File "C:\mqt\paho.py", line 2, in <module>
import paho.mqtt.client as mqtt
ModuleNotFoundError: No module named 'paho.mqtt'; 'paho' is not a package
我已經完成了在線提供的所有解決方案,但沒有機會。
還使用https://stackoverflow.com/a/49028561/2543240獲得了安裝目錄, paho
目錄在那里並包含 py 文件。
是否有任何調試命令可以幫助此類情況,以查看 python 實際在哪里尋找它想要加載而不能加載的文件?
任何幫助將不勝感激。
編輯
只需import paho
返回任何錯誤。 但import paho.mqtt
導致
ModuleNotFoundError: No module named 'paho.mqtt'; 'paho' is not a package
所以安裝和卸載會有一些不同,但只是為了import paho
而不是import paho.mqtt
或import paho.mqtt.client as mqtt
。 對於以后的導入,無論我是安裝還是卸載 paho-mqqt,都會出現錯誤消息。
如果您將源文件命名為 paho.py,它可能會隱藏 paho 包。
所以將 paho.py 重命名為 paho2.py 應該可以解決這個問題。
您的腳本C:\\mqt\\paho.py
在運行時被 Python 導入系統用作模塊paho
因此import paho
可以工作,但import paho.mqtt
不起作用,因為paho.py
被 Python 視為模塊,而不是包.
重命名您的腳本。 並且請記住未來的經驗:永遠不要給您的腳本與現有模塊或包相同的名稱,尤其是來自標准庫的模塊或包。 例如,始終避免將腳本命名為email.py
或test.py
。
運行pip
時,您可能不會調用同一個python
。
您可以通過運行以下命令來保證您在正確的 Python 3.8.1 實例中運行 pip:
python -m pip install paho-mqtt
這對你有幫助嗎?
當正常的pip
不起作用時,您必須提及 Python 的版本。
使用sudo pip3 install paho-mqtt
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.