windows10下pytorch模块安装出现的问题以及解决方法(no module name ‘XXX‘)

在Windows10上使用Anaconda安装PyTorch时遇到import torch失败,通过Anaconda Navigator手动安装解决。之后安装torchvision,因网络问题导致速度慢和版本冲突,通过修改下载源和降低Pillow版本解决问题。最后,解决torchvision导入时的PIL版本过高问题,通过修改torchvision源代码完成导入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

windows10关于annaconda下 pytorch安装包所遇到的问题

(anaconda已装的库,可在cmd下用conda list命令查看)

(请保证在看完整个操作后进行操作,期间记录了一些错误点)

1. import torch

   显示没有这个包,pip install torch 安装总失败

  解决方案:

   打开anaconda navigator,选择environment,选择all,搜torch

   出现的pytorch,点击框框,再apply(时间可能会比较久一点,我电脑的风扇疯狂在转吓了我一跳)

   装好如下图:

 然后安装好了之后 在cmd命令行下,输入python,回车,再输入import torch,没有错误返回则说明是成功的

如图:

2. import torchvision 

   由于在navigator里搜不到torchvision,因此采用pip的方式安装。按理来说,缺什么装什么就好了,但是由于pip的网速有限制,会导致time out 一堆红色的错误出现,然后根据帖子(https://blog.youkuaiyun.com/Louise_Trender/article/details/103500509)可 解决pip下载太慢的问题

  使用命令:

pip install torchvision -i https://pypi.tuna.tsinghua.edu.cn/simple 

(速度的确要快很多啊)

  但是新的问题又出现了,出现依赖问题 requirement already satisfied:Pillow>=4.1.1 (说是Pillow版本太高了,要降版本)

  按照教程:  

pip uninstall Pillow 

 

pip install Pillow == 4.1.1 

然后我又用上面的命令install了一次torchvision

pip install torchvision -i https://pypi.tuna.tsinghua.edu.cn/simple 

这次的问题 Could not find a version that satisfies the requirement torch==1.4.0

我先把自己的torch卸了再准备安装1.4.0发现库里根本没有这个版本的,然后根据帖子(http://www.195440.com/1967)解决了

解决方案:

步骤一:pip install torch==1.3.1 -f https://download.pytorch.org/whl/torch_stable.html

pip install torch==1.3.1 -f https://download.pytorch.org/whl/torch_stable.html

步骤二:pip install torchvision==0.4.1   (这步如果太慢的话 试试在后面加上 -i https://pypi.tuna.tsinghua.edu.cn/simple

pip install torchvision==0.4.1

import torchvision 后出现PIllow的import 错误 在运行的时候是这种错误(因为安装torchvision时会默认安装7.0.0版本,版本太高了,所以要降版本。突然就觉得的pillow操作白整了。)

解决方案:(https://blog.youkuaiyun.com/Lee_lg/article/details/103901632?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task)(我觉得这个方案是最简单的方法了)

根据地址,找到functional.py文件 然后使用from PIL import Image, ImageOps, ImageEnhance, __version__ 替换文件中from PIL import Image, ImageOps, ImageEnhance,PILLOW_VERSION这句。(大概在前面几行的样子)保存退出

查看torchvision是否import成功,不出现其他东西就是import成功了

 

至此,暂告一段落。

<think>好的,我现在需要解决用户在命令行中运行Jupyter Notebook时出现的ModuleNotFoundError问题。这个问题具体是找不到某个模块,比如'torch._C'或者其他库。用户提到在命令行中可以导入这些库,但在Jupyter Notebook中却不行。我需要仔细分析可能的原因,并提供有效的解决方案。 首先,根据用户提供的引用信息,特别是引用[2]中的内容,问题的根源可能在于Jupyter Notebook使用的Python环境与命令行中的不同。也就是说,虽然用户在命令行里安装了某个库,但Jupyter Notebook可能指向了另一个Python环境,导致无法找到已安装模块。这时候需要确认Jupyter Notebook使用的Python路径是否正确。 接下来,我需要逐步检查可能的解决方法。首先,用户需要检查Jupyter Notebook的内核是否指向正确的Python环境。可以通过在Jupyter中运行`import sys; print(sys.executable)`来查看当前使用的Python解释器路径。如果这个路径与命令行中的Python环境(比如Anaconda的环境)不一致,就需要调整Jupyter的内核设置。 然后,用户可能需要重新安装Jupyter Notebook到正确的环境中。例如,如果使用的是conda环境,应该先激活该环境,再用`conda install jupyter`来安装,确保Jupyter与目标环境关联。此外,安装缺失的模块时,也需要在正确的环境中进行安装。例如,在激活conda环境后,使用`conda install 模块名`或`pip install 模块名`来安装缺失的库。 另外,用户可能需要手动添加内核到Jupyter中。如果环境已经存在但未被Jupyter识别,可以使用`python -m ipykernel install --user --name 环境名 --display-name "显示名称"`来添加内核。这样在Jupyter中切换内核后,应该可以正确导入模块。 如果问题仍然存在,可能需要检查环境变量,特别是PYTHONPATH是否包含模块所在的路径。或者,在Jupyter Notebook中临时添加路径,使用`sys.path.append('模块路径')`。不过这种方法每次都需要手动操作,不够方便。 此外,用户提到的引用[3]中提到关于CUDA和cuDNN的问题,如果是PyTorch或TensorFlow等库的问题,可能需要确保安装了正确版本的CUDA和cuDNN,并且环境变量配置正确。这可能涉及到conda环境的版本管理,比如使用`conda install cudatoolkit=11.3`等命令。 最后,用户可能需要更新所有工具到最新版本,包括Jupyter、pip、conda等,以避免版本冲突。如果所有方法都无效,可能需要彻底检查环境配置,或者考虑重新创建干净的conda环境来排除干扰。 总结起来,解决步骤大致如下: 1. 确认Jupyter使用的Python环境。 2. 安装或切换Jupyter内核到正确的环境。 3. 在正确环境中安装缺失的模块。 4. 检查环境变量和路径设置。 5. 处理可能的CUDA/cuDNN相关问题。 6. 更新工具或重建环境作为最后手段。 需要确保用户按照步骤逐一排查,并验证每个步骤是否解决问题。同时,根据用户的引用资料,重点强调conda环境和路径配置的重要性,因为这些是常见的问题根源。</think>### 分步解决方案 #### 1. **确认Jupyter Notebook使用的Python环境** - **步骤**: 在Jupyter Notebook中运行以下代码,查看输出的Python解释器路径: ```python import sys print(sys.executable) ``` - **对比**: 在命令行中激活你的目标Python环境(如conda环境),运行`python -c "import sys; print(sys.executable)"`,检查路径是否一致。若不一致,说明Jupyter未使用目标环境。 #### 2. **安装或切换Jupyter内核到正确环境** - **方法1(推荐)**: 重新安装Jupyter到目标环境: ```bash # 激活conda环境(假设环境名为myenv) conda activate myenv # 安装jupyter到当前环境 conda install jupyter ``` - **方法2**: 手动添加内核到Jupyter: ```bash # 激活目标环境后执行 python -m ipykernel install --user --name myenv --display-name "MyEnv" ``` - **验证**: 重启Jupyter,在Kernel > Change kernel中选择新添加的内核。 #### 3. **在正确环境中安装缺失的模块** - **步骤**: ```bash # 激活目标环境 conda activate myenv # 使用conda或pip安装模块 conda install 模块名 # 或 pip install 模块名 ``` - **注意**: 若模块PyTorch等需要CUDA支持的库,需检查CUDA版本匹配: ```bash conda install pytorch torchvision cudatoolkit=11.3 -c pytorch ``` #### 4. **检查环境变量与路径** - **临时添加路径(不推荐)**: ```python import sys sys.path.append("/path/to/module") ``` - **永久配置**: 在目标环境的激活脚本中设置`PYTHONPATH`: ```bash # 对于conda环境,编辑激活脚本(如~/.bashrc) export PYTHONPATH="/path/to/module:$PYTHONPATH" ``` #### 5. **处理CUDA/cuDNN相关问题** - **症状**: 若错误涉及`libcudnn`或`cudnnGetVersion`,需检查CUDA与cuDNN版本: ```bash # 确保conda环境中安装了正确版本的cudatoolkit和cudnn conda install cudatoolkit=11.3 cudnn=8.2 -c conda-forge ``` #### 6. **终极方案:重建干净环境** - **步骤**: ```bash # 创建新环境 conda create -n new_env python=3.8 conda activate new_env # 安装必要库 conda install jupyter numpy pandas conda install pytorch torchvision -c pytorch # 按需安装 ``` ### 验证是否解决 重启Jupyter Notebook后,尝试导入模块: ```python import 模块名 # 例如:import torch print(torch.__version__) # 确认无报错 ``` ### 相关问题 1. 如何检查Jupyter Notebook当前使用的Python环境? 2. Conda环境中安装的库为什么在Jupyter中找不到? 3. 如何为Jupyter Notebook添加多个内核? 4. 为什么PyTorch在Jupyter中提示CUDA不可用? --- [^1]: 引用自环境配置常见问题PyTorch安装指南。 [^2]: 参考Jupyter Notebook环境路径冲突的解决方案。 [^3]: 关联CUDA/cuDNN版本不匹配的修复方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值