问题描述

有包却提示ModuleNotFoundError

在正常情况下,你使用pip或者conda检查是否有相应包的时候,显示的是有的。但是一旦运行程序就会报这个ModuleNotFoundError错误。

问题可能是程序运行环境不对。

解决方案

(1)进入正确的环境

所以你需要使用conda激活你自己的环境。

conda activate conda_name

如果默认的是base等环境,你还需要先退出,再激活你自己相应项目的环境。

conda deactivate

(2)包的版本问题

还有原因就是版本不对。你应该使用conda或pip去卸载旧版本升级新版本。

pip卸载与安装包pip install numpypip uninstall numpyconda卸载与安装包conda install numpyconda uninstall numpy

如果pip需要更新:

更新pippython -m pip install --upgrade pip使用pip升级包pip install --upgrade numpy

至于具体是使用conda还是pip需要看你的包的情况。有的时候,如果不是使用conda安装,conda会找不到相应的包,需要使用pip去卸载。

一般这些包卸载重装后基本都能解决ModuleNotFoundError了。

这里有更为齐全的conda相关命令。conda配置环境的一些常用命令_ACMSunny的博客-CSDN博客

(3)编译器问题

还有可能是选择的编译器的问题:view——commandplaette——selected interpreter,选择你安装过相应包的编译器就么问题了。

这一篇是我之前遇到过的解决方案

ModuleNotFoundError: No module named ‘pandas‘ 和Import “pandas“ could not be resolved from source_ACMSunny的博客-CSDN博客

(4)还有一种是python自身问题

这时候你需要更新python版本。但是有时候会报错找不到相应的版本。这个时候大概率需要使用镜像网站安装的方式去安装python,比如

pip install python -ihttp://pypi.douban.com/simple/国内常用的源地址有。清华:https://pypi.tuna.tsinghua.edu.cn/simple阿里云:https://mirrors.aliyun.com/pypi/simple/中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/华中理工大学:http://pypi.hustunique.com/山东理工大学:http://pypi.sdutlinux.org/豆瓣:http://pypi.douban.com/simple/

如果它一直报错,说找不到相应的版本。那大概率是安装地方有相应的损坏包。可以找到相应位置删除。

比如,你激活环境运行程序的时候,最开始的几行就是你的环境的地址,也包括了python的地址,你可以根据地址去找出来把它删除了,然后再安装就能安装上了。

如果你在view-command plaette-select interpreter中找不到你创建的相应虚拟环境。你需要退出vscode再次进入。

然后这时候你就能安装好你的python了。

(5)仍旧解决不了

看下面的或许有帮助

python 解决“ModuleNotFoundError“错误的万能方法_lingqing97的博客-CSDN博客_modulenotfounderror

明明安装了模块/包,Python提示无包/模块/报错_蛋炒鸡丁小饭团的博客-CSDN博客