问题

在jupyter里跑代码,我们pip install某个模块并且显示下载成功,但是当我们去import导入时,发现还是显示No module xxx found这个报错。

原因

出现这种情况的原因是Anaconda所配置的库路径没有包含当前的python的库路径。

可以看到这是我jupyter的路径

而这是我终端的路径

可以看到明显是不一样的。

如果我们的jupyter所配置的库路径没有包括pip install第三方库安装路径的话,我们在Jupyter是调用不了pip install的下载的包的。

解决方法有两种:

第一种,就是把Pip install的路径设为jupyter所配置的路径。

改成上文里第二行的site-packages这一行的路径。

更改方法详见查看第三方库的安装路径并修改路径

第二种就是我题目说的,添加Jupyter的package路径。

网上我目前找到了两种方法:

(1)sys.path.append添加路径

这种方法治标不治本,每次我们打开jupyter的时候都要添加这几行代码。

(2)添加环境变量

这种方法我在我电脑试了也没用,下面说的是最后一种方法。

(3)更改jupyter配置文件

我们cmd打开终端,输入

jupyter --config-dir

可以看到系统返回一个路径,我们复制下来,去到 .jupyter的目录下

可以看到jupyter_notebook_config.py文件,如果没有的话就创建

在该文件中添加这段代码

import os

c = get_config()

c.NotebookApp.extra_sys_path = [os.path.join(os.environ['HOME'], 'path/to/your/python/packages')]

其中'path/to/your/python/packages'是你的package库的路径。

格式如下:

不知道自己路径的话,可以去看上面那个查看第三方库安装路径的链接。

保存文件并关闭,然后重启Jupyter,再去输入

import sys

sys.path

应该就可以看到路径多了我们所添加的这一行路径了,并且代码运行不会出现NO module。

好文链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: