上周我有一个工作的 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 <env_name>
检查所有已安装的包,我可以看到实际上已经安装了 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/<name>/anaconda3/lib/python37.zip', '/home/<name>/anaconda3/lib/python3.7', '/home/<name>/anaconda3/lib/python3.7/lib-dynload', '/home/<name>/anaconda3/lib/python3.7/site-packages']
我没有亲自对 PYTHONPATH
进行任何更改.
如果我运行 python -c 'import sys; print(sys.path)'
在我的 conda env(非基础)处于事件状态的情况下,我得到:
['', '/home/<name>/anaconda3/envs/<env_name>/lib/python37.zip', '/home/<name>/anaconda3/envs/<env_name>/lib/python3.7', '/home/<name>/anaconda3/envs/<env_name>/lib/python3.7/lib-dynload', '/home/<name>/anaconda3/envs/<env_name>/lib/python3.7/site-packages']
这太奇怪了,在上周的过程中,如果我不接触代码或对 Anaconda 进行任何更改,我无法弄清楚发生了什么,也不知道会发生什么。
最佳答案
打开 anaconda-prompt 然后运行它
conda install PyTorch -c PyTorch
如果你没有升级你的pip.使用这个命令来更新
python -m pip install –升级pip
第一步运行后
pip3 安装 torchvision
希望它能奏效。
关于python - 无法在 Conda Env 中导入 PyTorch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58084535/