问题描述

早上打算用jupyter 搞torch的时候,import torch时报错:

No module 'torch' found

但在命令行里却没有问题:

jupyter 调用java jupyter import_环境变量


查找资料得知jupyter 的编译路径并不是默认python库的路径,所以pip/conda下载的包jupyter是无法直接调用的。

永久性解决办法

网上看很多人推荐conda install nb_conda,然后jupyter里面换kernel的环境,试了并没有效果。
更多的博客说,在正确的路径重新下。我花了那么多心思下的torch和cuda你叫我重新下???
后来找到了一种最省时省力省肝的方法:配置环境变量

这里以我的 torch 为例,其他包也类似

1.查看环境变量

首先在命令行进入anaconda的torch环境(其他包就根据自己的下载情况),然后输入python进入python运行环境。接下来输入:

import sys
sys.path

通过调用sys查看当前环境的环境变量,效果如下:

jupyter 调用java jupyter import_python_02


可以看到上面在envs\torch_gpu\路径下有一个lib\site-packages,就是这个环境下安装包的位置。也可以在jupyter查看一下,发现上述两个路径在jupyter中是不存在的:

jupyter 调用java jupyter import_环境变量_03

2.添加环境变量

右击“此电脑”,找到“属性”:

jupyter 调用java jupyter import_安装包_04


选中“高级系统设置”

jupyter 调用java jupyter import_jupyter 调用java_05


选择“环境变量”,在用户环境变量中选择“新建”:

jupyter 调用java jupyter import_jupyter 调用java_06


设置环境变量名为PYTHONPATH,随后将上述查看到的两个环境变量(根据自己第一步里查到的情况而定)

添加到PYTHONPATH中,中间用分号;隔开:

jupyter 调用java jupyter import_jupyter 调用java_07


添加完毕:

jupyter 调用java jupyter import_jupyter 调用java_08


随后点击确定,然后一路确定返回,退出即可。

3.校验使用

随后再次打开jupyter,输入import sys sys.path

jupyter 调用java jupyter import_环境变量_09


这时候jupyter中已经添加了安装包的环境变量,导入包试验一下:

jupyter 调用java jupyter import_python_10


问题解决!