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

相关推荐
_Johnny_2 小时前
conda 配置源
conda
sun lover18 小时前
conda简单命令
python·conda
drebander1 天前
Conda 虚拟环境与 venv、virtualenv、pipenv 的对比
python·conda·virtualenv
摸鱼仙人~2 天前
ImportError: cannot import name ‘FixtureDef‘ from ‘pytest‘
conda·pytest·fastapi
iks3252 天前
远程计算机无conda情况下配置python虚拟环境
服务器·python·conda
melck2 天前
Conda 常用命令全解析
conda
~|Bernard|4 天前
conda和conda-forge区别?怎么选用?
人工智能·深度学习·conda·transformer
蜗牛去旅行吧4 天前
解决 `pip is configured with locations that require TLS/SSL` 错误
网络协议·ssl·pip
溯源0064 天前
在conda虚拟环境中安装jupyter lab-----deepseek问答记录
ide·jupyter·conda