pip明明安装了包,运行时仍报找不到包ModuleNotFoundError错误

解决pycharm中pip明明安装了Python包XX,但是运行XXX.py脚本时仍提示找不到对应包,报“ModuleNotFoundError: No module named XX”错误

您是不是经常遇到明明用pip安装了Python包XX,但运行脚本还是报“ModuleNotFoundError: No module named XX”的问题,今天就手把手教您解决这个问题。

问题分析:出现这个问题的原因是pycharm中terminal的设置和“Python interpreter”不一致产生的,您在pycharm的Terminal中运行的pip是系统默认安装的Python pip,但您所运行的脚本所用的编译器Python interpreter却不是系统默认的编译器Python interpreter,即terminal中的是全局的,脚本中的是局部的。

解决方法:

1.新增编译器,依次进入pycharm-file-Project-Python Interpreter-Add Interpreter-Add Local Interpreter-OK,如下图:

pip明明安装了包,运行时仍报找不到包ModuleNotFoundError错误

2.创建虚拟环境,以conda为例,依次进入Conda Environment-conda Executetable(注意这里需要根据您conda安装路径选择conda*ex.e**)-Create new environment-Environment name(自行命名)-Python version(以3.8为例)-OK(点击后就开始创建conda 虚拟环境了)

pip明明安装了包,运行时仍报找不到包ModuleNotFoundError错误

3.找到虚拟环境,一般这个虚拟环境默认是创建在“C:\Users\dky\.conda\envs”这个路径下,如下图所示是我创建的几个conda虚拟环境,这一步很关键:

pip明明安装了包,运行时仍报找不到包ModuleNotFoundError错误

4.配置pycharm 的terminal,这一步很关键,依次点击pycharm的Terminal-▽-Setting,见下图所示:

pip明明安装了包,运行时仍报找不到包ModuleNotFoundError错误

进入Terminal之后,找到Environment variables,并点击其右边的小框框,见下图所示:

pip明明安装了包,运行时仍报找不到包ModuleNotFoundError错误

接下来就是最最最.....关键的一个点了,进入Environment variables之后,会弹出如下对话框,需要新增一个环境变量,并把刚刚我们新建的conda虚拟环境的绝对地址配置在最前面,也就是需要在如下User Environment variables中新增一条环境变量,这里需要先将下面的系统环境变量的value值拷贝后放入你User Environment variables中的value中,然后,然后,然后把你conda虚拟环境中的这两个绝对地址:

C:\Users\dky\.conda\envs\py39;C:\Users\dky\.conda\envs\py39\Scripts

放在User Environment variables中的value中的最前面,如下图所示,依次按照123456进行操作

pip明明安装了包,运行时仍报找不到包ModuleNotFoundError错误

5.OK重启pycharm

经过以上5步操作,就可以实现pycharm中的terminal中的pip安装的包和您的conda虚拟环境的包一致了。

其他环境的pip同理。

最关键的就是terminal中User Environment variables的设置,需要把您虚拟环境中的两个绝对地址放到User Environment variables中的value的最前面。

文章为原创文章,创作不易,请给予多多支持,谢谢。