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

相关推荐
cyforkk2 天前
Anaconda配置环境变量和镜像
conda
❀搜不到2 天前
查询 conda + pip 装的包
windows·conda·pip
万粉变现经纪人3 天前
如何解决pip安装报错ModuleNotFoundError: No module named ‘sympy’问题
python·beautifulsoup·pandas·scikit-learn·pyqt·pip·scipy
万粉变现经纪人5 天前
如何解决pip安装报错ModuleNotFoundError: No module named ‘python-dateutil’问题
开发语言·ide·python·pycharm·pandas·pip·httpx
haveyb5 天前
python版本管理和依赖管理的最佳实践,pyenv + uv
python·virtualenv·pip·uv·pyenv
胡耀超5 天前
4、Python面向对象编程与模块化设计
开发语言·python·ai·大模型·conda·anaconda
1373i5 天前
【Python】pytorch安装(使用conda)
pytorch·python·conda
~|Bernard|6 天前
在 PyCharm 里怎么“点鼠标”完成指令同样的运行操作
算法·conda
您的通讯录好友6 天前
conda环境导出
linux·windows·conda
剑客的茶馆8 天前
新服务器从0开始搭配Ubuntu+Conda+Docker+Dify
服务器·ubuntu·docker·conda·dify