【环境思考】| 关于pip安装的一些问题解决,从哪里下载,缓存,以及构建环境包的几种方式


Python包安装是Python开发过程中的重要环节,它允许开发者为项目添加额外的功能或库。

而其中最重要的指令是pip

我们会发现,当我们输入pip的时候,就会进行安装

我会很好奇,pip这些是从哪里下载安装的,原理是什么?

首先我们回答:pip本身是什么?

1 pip 是什么,下载基本原理

pip是Python的包管理器,用于安装和管理Python包。它允许开发者从Python Package Index(PyPI,是主要途径)或其他源安装、升级和卸载包。

所以说pip本身会直接从PyPI · The Python Package Index里面进行检索下载

pip往往会从Python Packege Index里面安装,使用一个requirements specifier(一个requirement specifier 里面包括有一个包名和可选的版本specifier)

pip安装从Source Distributions(sdist),或者Wheels,如果两个同时存在,pip一般更倾向于安装Wheels里面的。因为wheels更加快,如果没有找到wheels,则会在本地建一个wheel,并且进行缓存为了未来的安装.

这里有一个问题,缓存放到了哪里pip安装Python扩展库时下载的文件(如whl文件)存放于哪里的?_pip下载的whl包在什么路径-CSDN博客

2 pip的基础用法

  • 使用pip安装:在命令行中,使用pip命令可以轻松地安装Python包。例如,要安装名为example-package的包,可以运行pip install example-package。pip会自动从PyPI下载并安装该包及其依赖项。
  • 指定版本:如果要安装特定版本的包,可以在包名后面加上版本号,如pip install example-package==1.0.0
  • 升级包:使用pip install --upgrade example-package可以升级已安装的包到最新版本。
  • 卸载包:使用pip uninstall example-package可以卸载不再需要的包。

3 虚拟环境的建立

为了避免不同项目之间的包版本冲突,通常建议为每个项目创建独立的虚拟环境。在虚拟环境中,可以安装特定于该项目的包版本,而不会影响系统或其他项目的环境。

主流的管理方式有

4 几种构建环境,包安装的方式

4.1 从VCS里面安装

pip install -e SomeProject @ git+https://git.repo/some_pkg.git          # from git
pip install -e SomeProject @ hg+https://hg.repo/some_pkg                # from mercurial
pip install -e SomeProject @ svn+svn://svn.repo/some_pkg/trunk/         # from svn
pip install -e SomeProject @ git+https://git.repo/some_pkg.git@feature  # from a branch

4.2 从其他Indexes里面安装

pip install --index-url http://my.package.repo/simple/ SomeProject

4.3 从本地的scr tree

pip install -e <path>

4.4 从本地的archives

pip install ./downloads/SomeProject-1.0.4.tar.gz

pip install --no-index --find-links=file:///local/dir/ SomeProject
pip install --no-index --find-links=/local/dir/ SomeProject
pip install --no-index --find-links=relative/dir/ SomeProject
  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值