解决Conda虚拟环境中pip下载包总是到base环境的问题

conda本地创建的虚拟环境使用pip安装一些包总是安装到base环境中,导致无法正确进行环境隔离,下面是一些解决办法

方法一、使用python -m pip安装

1.1、验证虚拟环境的pip版本是哪个版本,如下所示,本人的demo虚拟环境直接使用pip --version版本显示的是anaconda/lib/slite-packages下面的

bash 复制代码
E:\test>conda activate demo

(demo) E:\test>pip --version
pip 21.2.4 from D:\Anaconda3\lib\site-packages\pip (python 3.9)

1.2、使用python -m pip --version显示的是anaconda/envs/demo/lib/slite-packages下面的

bash 复制代码
(demo) E:\test>python -m pip --version
pip 24.2 from D:\Anaconda3\envs\demo\lib\site-packages\pip (python 3.9)

1.3、在虚拟环境中使用python -m pip install来安装你需要的package包

bash 复制代码
(demo) E:\test>python -m pip install your_packages

方法二、使用pip的绝对路径来安装package包

2.1、虚拟环境中的pip路径是Anaconda3\envs\demo\Scripts\pip.exe,pip后面跟着--target可以强制其安装的包的安装路径,如下所示

bash 复制代码
"D:/Anaconda3/envs/demo/Scripts/pip.exe" install opencv-python --target 
"D:/Anaconda3/envs/demo/Lib/site-packages" 

2.2、下面是本人使用绝对路径下载opencv-python包的过程

其中-i意思是临时使用下载源的意思

bash 复制代码
(demo) E:\test>"D:/Anaconda3/envs/demo/Scripts/pip.exe" install opencv-python --target "D:/Anaconda3/envs/demo/Lib/site-packages" -i https://pypi.tuna.tsinghua.edu.cn/simple
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting opencv-python
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/ec/6c/fab8113424af5049f85717e8e527ca3773299a3c6b02506e66436e19874f/opencv_python-4.10.0.84-cp37-abi3-win_amd64.whl (38.8 MB)
     ---------------------------------------- 38.8/38.8 MB 25.2 MB/s eta 0:00:00
Collecting numpy>=1.17.0 (from opencv-python)
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/ea/2b/7fc9f4e7ae5b507c1a3a21f0f15ed03e794c1242ea8a242ac158beb56034/numpy-2.0.2-cp39-cp39-win_amd64.whl (15.9 MB)
     ---------------------------------------- 15.9/15.9 MB 22.7 MB/s eta 0:00:00
Installing collected packages: numpy, opencv-python
Successfully installed numpy-2.0.2 opencv-python-4.10.0.84

(demo) E:\test>"D:/Anaconda3/envs/demo/Scripts/pip.exe" list
Package       Version
------------- ---------
numpy         2.0.2
opencv-python 4.10.0.84
pip           24.2
setuptools    75.1.0
wheel         0.44.0

(demo) E:\test>

方法三、创建虚拟环境的使用跟着--copy和python=需要的python版本命令

3.1、如下是本人创建一个python=3.9.0版本的虚拟环境,命令

bash 复制代码
E:\test>conda create -n test --copy python=3.9.0##使用--copy复制一份包,python=后面填写自己需要的python版本

3.2、本人测试在虚拟环境中默认启动版本,如下所示,说明--copy和指定python版本使得默认pip就是虚拟环境里面的pip路径

bash 复制代码
E:\test>conda activate test

(test) E:\test>pip --version
pip 24.2 from D:\Anaconda3\envs\test\lib\site-packages\pip (python 3.9)

(test) E:\test>python -m pip --version
pip 24.2 from D:\Anaconda3\envs\test\lib\site-packages\pip (python 3.9)

方法四:查看系统中有没有相关的python路径

4.1、在系统环境变量里面查看有没有各种相关的python变量,将其删掉

例如:删除系统变量中的 PYTHONHOME

4.2、将虚拟环境的Lib/site-package的路径 添加至系统变量Path中,本方法不推荐,因为创建其他虚拟环境会干扰其他虚拟环境里默认查找路径

参考:

https://blog.csdn.net/qq_50891451/article/details/134837919

https://blog.csdn.net/zy1183747231/article/details/129271625

相关推荐
FBI HackerHarry浩12 小时前
解决pip 安装 numpy 时元数据生成失败
numpy·pip
砍材农夫13 小时前
python环境|pip|uv|venv|Conda区别
后端·python·conda·pip·uv
pixelpilot11 天前
Conda:跨平台的二进制包管理器
其他·conda
lg_cool_2 天前
使用conda管理python运行环境并关联vscode
vscode·python·conda
javajenius2 天前
Pixi:用 Rust 重写 Conda 体验的包管理工具
开发语言·其他·rust·conda
小白弄潮儿2 天前
Conda 使用入门指南
conda
DFT计算杂谈2 天前
WannierTools输入文件wt.in一键批量生成脚本
java·前端·chrome·python·算法·conda
weixin_468466852 天前
网络数据采集新手入门指南
python·网络爬虫·conda·编程
砍材农夫3 天前
python 如何一次性安装项目所有依赖包(pip和uv)
开发语言·python·pip·uv
小白弄潮儿3 天前
Conda 使用入门指南(续):解决 pip 安装问题与最佳实践
conda·pip