【问题标题】:Not Able to Import PyTorch in Conda Env无法在 Conda Env 中导入 PyTorch
【发布时间】:2020-01-24 19:52:16
【问题描述】:

上周我有一个用于项目的工作 conda env。我已经一周没有碰过这个项目了。我只是去运行一个运行没有错误的python文件(python file.py)。

现在我收到以下错误:

Traceback (most recent call last):
  File "file.py", line 2, in <module>
    from torch.utils.data import Dataset, DataLoader
ModuleNotFoundError: No module named 'torch'

为了排除故障,我打开了一个 python 控制台并运行了以下代码:

>>> import torch

结果是以下错误消息:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'torch'

如果我使用 conda list -n &lt;env_name&gt; 检查所有已安装的软件包,我可以看到 PyTorch 实际上已安装,就像上周一样。

...
pytorch                   1.2.0           py3.7_cuda9.2.148_cudnn7.6.2_0    pytorch
...
torchvision               0.4.0                 py37_cu92    pytorch
...

这是我使用 python 启动 python 控制台时看到的:

Python 3.7.4 (default, Aug 13 2019, 20:35:49) 
[GCC 7.3.0] :: Anaconda, Inc. on linux

python -c 'import sys; print(sys.path) 在基础环境中的输出是:

['', '/home/&lt;name&gt;/anaconda3/lib/python37.zip', '/home/&lt;name&gt;/anaconda3/lib/python3.7', '/home/&lt;name&gt;/anaconda3/lib/python3.7/lib-dynload', '/home/&lt;name&gt;/anaconda3/lib/python3.7/site-packages']我个人没有对PYTHONPATH进行任何更改。

如果我在 conda env(非基础)活动的情况下运行 python -c 'import sys; print(sys.path)',我会得到:

['', '/home/&lt;name&gt;/anaconda3/envs/&lt;env_name&gt;/lib/python37.zip', '/home/&lt;name&gt;/anaconda3/envs/&lt;env_name&gt;/lib/python3.7', '/home/&lt;name&gt;/anaconda3/envs/&lt;env_name&gt;/lib/python3.7/lib-dynload', '/home/&lt;name&gt;/anaconda3/envs/&lt;env_name&gt;/lib/python3.7/site-packages']

这太奇怪了,如果我不接触代码或对 Anaconda 进行任何更改,就无法弄清楚上周发生了什么,以及可能发生的事情。

【问题讨论】:

  • 你确定你不在基础环境中,即你是否激活了环境?
  • 是的,我实际上有三个环境都安装了 pytorch 和 torchvision,它们都不能正常工作。
  • 您是否有一个environment.yml 文件,可以将其与conda env export &gt; environment.yml 的输出进行比较,看看可能有什么变化?
  • @merv 我从自定义环境和基本 conda 环境中运行了您建议的命令,并将输出添加到问题中。
  • 是的,但只有在采取下列步骤之后。几周前我很难理解一切是如何工作的,然后这周就停止了工作,而我在这之间没有做任何改变。

标签: python python-3.x anaconda pytorch conda


【解决方案1】:
  1. 打开 anaconda-prompt 然后运行它

    conda install PyTorch -c PyTorch

  2. 如果您没有升级您的 pip。请使用此命令进行更新

    python -m pip install –upgrade pip

  3. 第一步运行后

    pip3 install torchvision

希望它会起作用。

【讨论】:

  • 唯一不起作用的是您建议的第二个命令。相反,我做了pip install --upgrade pip。否则,一切正常,非常感谢!顺便说一句,所有这些命令都是在给我带来麻烦的特定 conda 环境中执行的。
  • 我遇到了和你一样的问题。在那里我能够回答你的问题。快乐编码@HMLDude
猜你喜欢
  • 2021-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多