Jupyter Notebook无法识别“进口火炬”

时间:2018-09-09 17:31:50

标签: python pip anaconda jupyter-notebook conda

要按照官方网站的指示在Ubuntu上安装PyTorch,我做了pip3 install torch torchvision,并且可以使用PyTorch命令运行python3.5

但是,当我运行Jupyter Notebook(我只是在终端中运行Jupyter Notebook并使用Chrome浏览器访问我的笔记本)时,它无法识别该包,并抛出了ModuleNotFoundError: No module named 'torch'对我。

另一个奇怪的是, PyTorch似乎仅安装在Python 3.5 上,而没有安装在Python 3.6上,原因是:

➜  ~ python3.5 -c "import torch; print(torch.__version__)"     
0.4.1
➜  ~ python3.6 -c "import torch; print(torch.__version__)"     
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'torch'
➜  ~

因此,我猜测Jupyter Notebook没有使用Python 3.5

这是我在终端中键入python并按TAB时的结果:

➜  ~ python
python             python2.7          python3.5          python3.5m         python3.6          python3.6m         python3-config     python3m-config  
python2            python3            python3.5-config   python3.5m-config  python3.6-config   python3.6m-config  python3m

另外,当我运行which python时,由于最近安装了/home/mhy/anaconda3/bin/python,所以得到了Anaconda。然后,我使用以下命令激活了env并安装了PyTorch

source activate my_env
conda install torch torchvision

但是我也无法在PyTorch上运行Anaconda

1 个答案:

答案 0 :(得分:1)

首先,检查Jupyter笔记本是否在不同于安装PyTorch的环境上运行:

(my_env) instance-1:~$ source activate my_env
(my_env) instance-1:~$ python
>>> import  sys
>>> print(sys.executable)
/home/instance-1/anaconda3/envs/my_env/bin/python

,然后在my_env环境中运行笔记本: (my_env) instance-1:~$ jupyter notebook 然后在笔记本中执行print(sys.executable),然后如果您得到类似‘/home/instance-1/anaconda3/bin/python’的信息,则说明您在Jupyter用作默认环境的环境中创建了笔记本。

一旦发现在Jupyter笔记本电脑控制台中您可以选择在不同环境中创建笔记本电脑,我就一直在同一个问题上挣扎。因此,只需转到“新建”部分,然后选择Python(myenv)之类的东西,即可在所需的环境(在这种情况下为my_env)中创建笔记本。