Conda 安装pip依赖时报错No matching distribution found for xxx==6.2.3

问题背景

今天在使用 connda 创建环境的时候发现了一个问题,安装pip依赖一直失败。在网上找了资料无非是说以下几点:

  1. 网络有问题导致拉取网络依赖失败
  2. python版本跟依赖包不兼容
  3. 包版本不可用或者已经下架

现在让我们来一步一步进行定位

先查看自己的依赖包文件

conda依赖包的yml文件定义,使用pip:下级的依赖会使用pip进行安装,如果发现自己使用的包在conda中没上架需要配置好再进行安装

ini 复制代码
  - pip:
      - clip==0.2.0
      - colorama==0.4.6
      - fsspec==2025.3.0

问题定位

1. 网络有问题导致拉取网络依赖失败

笔者最后也是这个问题,但是是在踩过很多坑之后才发现这个问题。因为一开始在清华的镜像和国外镜像来回横跳。但都报错同样的问题导致以为是python版本问题或者其他问题。其实该问题解决到最后大部分是网络问题。

最后我成功解决使用的是阿里云的镜像。

需要注意的点是:

  1. 关闭防火墙和代理,使用国内网进行安装
  2. 因为conda有环境的概念,可以先创建一个纯净环境,再激活到这个环境中进行包的安装,如进行手动安装时这点有效
arduino 复制代码
pip config set global.index-url <https://mirrors.aliyun.com/pypi/simple/>

2. python版本有问题

这个问题比较容易定位,使用命令** pip show 依赖名** 即可进行定位。可以看下方的 requires** 和 ** required-by** 字段的值进行定位

less 复制代码
Name: clip
Version: 0.2.0
Summary: A CLI clipboard manager
Home-page: <http://procrastinatingdev.com/clip/>
Author: Adam McKerlie
Author-email: adammckerlie@gmail.com
License: Copyright (C) 2012 Adam McKerlie

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Location: 
Requires:
Required-by:

3. 包版本不可用或者已经下架(手动安装)

这里分为两部分,一部分是conda的包版本不可用,一部分是pip的包版本不可用

这里有几个注意点:

  1. 因为conda有环境的概念,可以先创建一个纯净环境,再激活到这个环境中进行包的安装。我一开始pip install手动安装clip依赖包是可用的,但是conda检测不到。故先激活到该环境再安装,才可以检测到。
  2. pip可以直接在官网上面查看包是否下架

PIP包名检测地址

PyPI · The Python Package Index

arduino 复制代码
# conda 检测 查看返回语句是否报错 如果安装成功也可以直接用了
conda install 依赖名
# pip检测 同上
pip install 依赖名

4. 下载whl文件到本地安装

终极解决方案,如果确定包是存在可用的,但是就是拉取不下来,那么可以在官方仓库中找到依赖文件到本地进行安装,下面是安装地址:

PyPI · The Python Package Index

安装命令:

perl 复制代码
![image.png](https://p9-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/1dc2a4f057e544a2bf59781f4d44e1f8~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5LiAX-S4quWJjeerrw==:q75.awebp?rk3s=f64ab15b&x-expires=1753170930&x-signature=DKy70nlMKsP3R3IHPfO%2B8w%2B5zEM%3D)
pip install /path/to/clip-0.2.0-py3-none-any.whl

需要注意的是,为conda有环境的概念,可以先创建一个纯净环境,再激活到这个环境中进行包的安装。我一开始pip install手动安装clip依赖包是可用的,但是conda检测不到。故先激活到该环境再安装,才可以检测到。重要的事情说了三遍

总结

其实无非是网络问题、版本问题、为什么检测不到和包是否不存在的问题。先通过修改镜像判断是否为网络问题,其次在官网上面查询该包查看是否有版本限制,最后手动下载查看是否可以检测到。如果包下架了就手动找到whl文件进行安装,如果可以下载但是检测不到可以激活环境后再下载。

相关推荐
小杨同学4912 分钟前
STM32 进阶封神之路(二十二):DMA 实战全攻略 ——ADC 采集 + 串口收发 + 内存复制(库函数 + 代码落地)
后端·单片机·嵌入式
天下无贼!34 分钟前
【Python】2026版——FastAPI 框架快速搭建后端服务
开发语言·前端·后端·python·aigc·fastapi
大傻^37 分钟前
Spring AI Alibaba Agent开发:基于ChatClient的智能体构建模式
java·数据库·人工智能·后端·spring·springaialibaba
大傻^1 小时前
Spring AI Alibaba ChatClient实战:流式输出与多轮对话管理
java·人工智能·后端·spring·springai·springaialibaba
SuniaWang1 小时前
《Spring AI + 大模型全栈实战》学习手册系列· 专题二:《Milvus 向量数据库:从零开始搭建 RAG 系统的核心组件》
java·人工智能·分布式·后端·spring·架构·typescript
张小洛1 小时前
Spring 常用类深度剖析(工具篇 02):ReflectionUtils——优雅操作反射的利器
java·后端·spring·工具类·spring常用类
夕颜1112 小时前
Skill 与 MCP Function:傻傻分不清楚?
后端
古城小栈2 小时前
Go 底层代码的完整分类
开发语言·后端·golang
码界奇点2 小时前
基于Spring Boot和MyBatis的图书管理系统设计与实现
spring boot·后端·车载系统·毕业设计·mybatis·源代码管理
轩情吖2 小时前
MySQL之事务管理
android·后端·mysql·adb·事务·隔离性·原子性