文章目录
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 虚拟环境的建立
为了避免不同项目之间的包版本冲突,通常建议为每个项目创建独立的虚拟环境。在虚拟环境中,可以安装特定于该项目的包版本,而不会影响系统或其他项目的环境。
主流的管理方式有
-
venv
(Python 3.3及以上版本自带)或virtualenv
(第三方库)来创建和管理虚拟环境。venv使用可以看这篇博客Python 项目管理的利器:虚拟环境 venv 的使用_project venv-CSDN博客 -
或者用conda也完全可以的,conda虚拟环境的使用可以看这篇博客Anaconda进行虚拟环境管理(conda命令总结)_查看anaconda虚拟环境配置情况-CSDN博客
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