【pip】pip install 无法安装到 conda 环境的另一种问题可能与解决方案

文章目录

    • [1. 发现问题](#1. 发现问题)
    • [2. 解决思路](#2. 解决思路)
    • [3. 解决步骤](#3. 解决步骤)
      • [3.1. 删除 ~/.local 中的 pip](#3.1. 删除 ~/.local 中的 pip)
      • [3.2. 正确换源 pip](#3.2. 正确换源 pip)
      • [3.3. 验证问题的解决](#3.3. 验证问题的解决)

1. 发现问题

新装了 ubuntu 系统,使用 sudo 权限在 /usr/local/miniconda3 下安装了 miniconda3(配置多用户 conda 环境),然后给 pip 换源:https://mirrors.bfsu.edu.cn/help/pypi/

随后创建 conda 环境后,发现 pip install 总是安装到 ~/.local 中去,而非安装在 conda 环境里。

使用 which pip 命令查看,发现除了 conda 环境的 pip ,还有一个 ~/.local/bin/pip

使用以下参考博客也没有解决问题:

更改Python的pip install 默认安装依赖路径方法详解:https://blog.csdn.net/woyizhizaizhaoni/article/details/102954067

2. 解决思路

~/.local/bin/pip 干扰了正常 conda 环境 pip 的运行。

该 pip 来源 :因为使用 sudo 权限安装了 miniconda3,导致换源 pip 时,以下升级命令无权限升级 base 环境(/usr/local/miniconda3/bin/pip),只好在当前用户的 ~/.local 中又安装了这个 pip,最终干扰了正常 conda 环境中 pip 的运行。

sh 复制代码
python -m pip install --upgrade pip

那么删除这个 pip 及其所附属的 python 即可。

3. 解决步骤

3.1. 删除 ~/.local 中的 pip

重复测试发现,~/.local 中的 pip 为以下 3 个文件、1 个文件夹(具体文件名因版本而异),删除即可:

txt 复制代码
~/.local
  ├─ bin
  │   ├─ pip
  │   ├─ pip3
  │   └─ pip3.11
  └─ lib
      └─ python3.11/

3.2. 正确换源 pip

在 base 环境(conda 的默认环境)中找到 pip 路径,只有一个 pip 的话证明~/.local 中的 pip 已成功被删除:

sh 复制代码
which pip
# 输出 /usr/local/miniconda3/bin/pip

使用 sudo 权限升级该 pip 并换源:

sh 复制代码
sudo /usr/local/miniconda3/bin/pip install --upgrade pip
pip config set global.index-url https://mirrors.bfsu.edu.cn/pypi/web/simple

3.3. 验证问题的解决

创建一个新的 conda 环境,并使用 pip 安装一些库,即可发现能够正确安装进 conda 环境。

相关推荐
hui函数4 小时前
Python系列Bug修复|如何解决 pip install 报错 ModuleNotFoundError: No module named ‘pygame’ 问题
python·bug·pip
白日与明月1 天前
pip下载库指定操作系统及python版本
开发语言·python·pip
巡山小钻风来也2 天前
FilterPy——工具库‌离线源码安装教程
python·pip
hyunbar2 天前
卸载 conda(太大) 安装 miniconda
conda
索西引擎2 天前
【LangChain 1.0】环境搭建指南:从 conda 到 uv 的现代化 Python 工程实践
python·langchain·conda
charlee443 天前
《GIS基础原理与技术实践》配套案例(Python版)
python·conda·numpy·gis·环境配置
Will_Ye3 天前
Ubuntu中pip 缓存和conda的缓存路径修改
缓存·conda·pip
一只积极向上的小咸鱼3 天前
Conda 环境迁移说明
conda
fengchengwu20123 天前
Conda 虚拟环境操作手册:从入门到精通
python·conda