问题描述
早上打算用jupyter 搞torch的时候,import torch时报错:
No module 'torch' found
但在命令行里却没有问题:
查找资料得知jupyter 的编译路径并不是默认python库的路径,所以pip/conda下载的包jupyter是无法直接调用的。
永久性解决办法
网上看很多人推荐conda install nb_conda
,然后jupyter里面换kernel的环境,试了并没有效果。
更多的博客说,在正确的路径重新下。我花了那么多心思下的torch和cuda你叫我重新下???
后来找到了一种最省时省力省肝的方法:配置环境变量
这里以我的 torch 为例,其他包也类似
1.查看环境变量
首先在命令行进入anaconda的torch环境(其他包就根据自己的下载情况),然后输入python
进入python运行环境。接下来输入:
import sys
sys.path
通过调用sys查看当前环境的环境变量,效果如下:
可以看到上面在envs\torch_gpu\
路径下有一个lib\site-packages
,就是这个环境下安装包的位置。也可以在jupyter查看一下,发现上述两个路径在jupyter中是不存在的:
2.添加环境变量
右击“此电脑”,找到“属性”:
选中“高级系统设置”
选择“环境变量”,在用户环境变量中选择“新建”:
设置环境变量名为PYTHONPATH
,随后将上述查看到的两个环境变量(根据自己第一步里查到的情况而定)
添加到PYTHONPATH
中,中间用分号;
隔开:
添加完毕:
随后点击确定,然后一路确定返回,退出即可。
3.校验使用
随后再次打开jupyter,输入import sys
sys.path
:
这时候jupyter中已经添加了安装包的环境变量,导入包试验一下:
问题解决!