求助!Linux中,python提示ImportError: No module named xxx该如何解决?

新手上路,请多包涵

我发现通过pip3 list可以看到我有xxx这个模块
但是在python文件中 import xxx却告诉我找不到?
请问各位大佬我该如何解决

阅读 3k
2 个回答

原因很简单,你用 pip3 安装到了 python A,然后你用 Python B 跑代码当然就是找不到刚刚安装的模块了!🤡🤡🤡🤡🤡🤡

使用 pip --version (或者 pip3 --version)看看,你这个 pip 指向的是哪个 python

╭─bot@amd-5700G ~
╰─➤  pip --version
pip 22.0.3 from /home/bot/.local/lib/python3.10/site-packages/pip (python 3.10)
╭─bot@amd-5700G ~
╰─➤  pip3 --version
pip 22.0.3 from /home/bot/.local/lib/python3.10/site-packages/pip (python 3.10)

使用 where pip (或者 where pip3)看看你的电脑上有几个 pip

╭─bot@amd-5700G ~
╰─➤  where pip
/home/bot/.local/bin/pip
╭─bot@amd-5700G ~
╰─➤  where pip3
/home/bot/.local/bin/pip3
/home/bot/opt/python3.10.1/bin/pip3
╭─bot@amd-5700G ~
╰─➤  where pip3.10
/home/bot/.local/bin/pip3.10
/home/bot/opt/python3.10.1/bin/pip3.10

使用 where python (或者 where python3)看看你的电脑上有几个 python

╭─bot@amd-5700G ~
╰─➤  where python
/usr/bin/python
/bin/python
╭─bot@amd-5700G ~
╰─➤  where python3
/home/bot/opt/python3.10.1/bin/python3
/usr/bin/python3
/bin/python3
╭─bot@amd-5700G ~
╰─➤  where python3.10
/home/bot/opt/python3.10.1/bin/python3.10
╭─bot@amd-5700G ~
╰─➤  where python3.9
/usr/bin/python3.9
/bin/python3.9
╭─bot@amd-5700G ~
╰─➤  where python3.8
/usr/bin/python3.8
/bin/python3.8

找到正确的 pippython 之间关系!!!

如果还是不懂,就看我这几个文章:
查看 pip 指向哪个 python 版本和包安装路径
查看电脑中所有 python 环境
当电脑安装有多个 Python 版本的时候,应该选用哪个来安装 pipenv 呢?
Linux 下 pip 多版本管理

Linux 经常可以有好多个 python 环境共存。
看看你的 pip3 跟 python 是不是同一套

另外有时候 pip install 里用的模块名跟 import 里用的不一样,去看看文档。

推荐问题
宣传栏