解决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

相关推荐
风落无尘1 天前
Python 包发布全流程:从项目结构到 PyPI 上线,以及我踩过的那些坑
开发语言·python·pip
QFIUNE2 天前
CD-HIT 详解:序列去冗余、安装使用与聚类结果解析
linux·服务器·机器学习·数据挖掘·conda·聚类
万粉变现经纪人3 天前
如何解决 pip install llama-cpp-python 报错 未安装 CMake/Ninja 或 CPU 不支持 AVX 问题
开发语言·python·开源·aigc·pip·ai写作·llama
Echo_NGC22374 天前
【论文解读】Attention Is All You Need —— AI 时代的“开山之作“,经典中的经典(transformer小白导读)
人工智能·python·深度学习·神经网络·机器学习·conda·transformer
何中应4 天前
Conda安装&使用
python·conda·python3.11
林浩杨5 天前
Pip对当前环境下的所有包进行更新
pip
qq_229058015 天前
conda中安装 rdkit版本的postgresql然后在Win11中使用虚拟环境里的rdkit
数据库·postgresql·conda
咯哦哦哦哦6 天前
Foundationpose环境配置【非conda--纯UV】(linux22.04+python3.10)
python·pip·uv
nashane7 天前
HarmonyOS 6学习:画中画(PiP)状态同步与场景化实战指南
学习·pip·harmonyos·harmonyos 5
Mr.朱鹏8 天前
【Python 进阶 | 第四篇】Psycopg3 + Flask 实现 PostgreSQL CRUD 全流程:从连接池到RESTful接口
python·postgresql·flask·virtualenv·fastapi·pip·tornado