python系列&deep_study系列:conda环境下pip install 无法安装到指定conda环境中(conda环境的默认pip安装位置)




conda环境下pip install 无法安装到指定conda环境中(conda环境的默认pip安装位置)

Outline

今天新建了个conda虚拟环境,需要安装某个库,进行了以下操作:

conda activate py38  # 激活名为py38的虚拟环境
pip install mdlib -i http://nexus.td.internal/nexus/repository/pypi_group/simple  # 安装需要的库(源是

然而pip安装完后,发现安装到这里了: .local/lib/python3.8/site-packages

按理说应该安装到这里:/opt/conda/envs/py38/lib/python3.6/site-packages

指定pip安装:

在这里插入图片描述

直接指名道姓(指定pip)的安装,这下应该可以了吧;

然并卵,依然会自动安装到 .local/ 下面。

解决

查看包的搜索路径

可以通过 python -m site(类似于 sys.path()的效果) 查看当前环境的包搜索路径(pip默认安装路径以及用户环境的目录

在这里插入图片描述

因为 pip install 背后实质上是通过 setup.py 来安装python包的;

setup.py 中用到 setuptools,安装过程中会用到sys.path信息,虽然上面sys.path中的信息包含 envs/py38,这个虚拟环境路径;

而且sys.path中的目录排序是有优先级顺序的(envs/py38 路径排在.local后面)

再者,当前用户环境目录也是 .local/, 且会最优先用户环境目录进行安装目录的确认;

修改用户环境目录

注:修改的前提是已经进入虚拟环境,这样修改的是虚拟环境下的配置,而不会影响到全局

修改 site.py 文件:

sudo vim /opt/conda/envs/py38/lib/python3.8/site.py  # 是否sudo看情况

在这里插入图片描述

默认 USER_SITEUSER_BASE 都为None (用的时候会默认填充当前用户的)

接下来把他们修改为conda环境的目录:

在这里插入图片描述

OK,再去执行下pip install 试试;

pip install 的内容成功安装到虚拟环境下)







mb5fdb138eb7a27

conda环境下pip install 无法安装到指定conda环境中(conda环境的默认pip安装位置)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

坦笑&&life

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值