安装python模块¶
作为一个流行的开源开发项目,python有一个由贡献者和用户组成的活跃的支持社区,这也使得其他python开发人员可以在开源许可条款下使用他们的软件。
这使得python用户能够有效地共享和协作,受益于其他人已经创建的公共解决方案(有时甚至很少!)问题,以及可能为公共池贡献自己的解决方案。
本指南涵盖了安装过程的一部分。有关创建和共享自己的Python项目的指南,请参阅 distribution guide .
注解
对于公司和其他机构用户,请注意许多组织都有自己的政策来使用和贡献开源软件。在使用随python提供的分发和安装工具时,请考虑这些策略。
关键术语¶
pip
是首选安装程序。从Python3.4开始,默认情况下它包含在Python二进制安装程序中。A 虚拟环境 是一个半隔离的Python环境,它允许为特定应用程序而安装包,而不是在系统范围内安装包。
venv
是创建虚拟环境的标准工具,并且自Python3.3以来一直是Python的一部分。从python 3.4开始,它默认为安装pip
所有创建的虚拟环境。virtualenv
是第三方的替代方案(和前身)venv
.它允许在3.4之前的Python版本上使用虚拟环境,这两种版本都不提供venv
或者根本无法自动安装pip
到创建的环境中。这个 Python Packaging Index _是开放源代码许可包的公共存储库,可供其他Python用户使用。
这个 Python Packaging Authority 是一组开发人员和文档作者,负责标准打包工具以及相关元数据和文件格式标准的维护和发展。他们维护各种工具、文档,并在两者上发布跟踪程序 GitHub 和 Bitbucket .
distutils
最初的构建和分发系统是1998年首次添加到Python标准库中的。同时直接使用distutils
正在逐步淘汰,它仍然为当前的打包和分发基础设施奠定了基础,它不仅是标准库的一部分,而且其名称以其他方式继续存在(例如用于协调Python封装标准开发的邮件列表的名称)。
在 3.5 版更改: venv
现在建议用于创建虚拟环境。
基本用法¶
标准的打包工具都设计为从命令行使用。
以下命令将从python打包索引安装模块及其依赖项的最新版本:
python -m pip install SomePackage
注解
对于POSIX用户(包括Mac OS X和Linux用户),本指南中的示例假定使用 virtual environment .
对于Windows用户,本指南中的示例假定在安装python时选择了调整系统路径环境变量的选项。
也可以直接在命令行上指定一个精确的或最小的版本。当使用比较器运算符时,例如 >
, <
或者其他一些由shell解释的特殊字符,包名和版本应该用双引号括起来:
python -m pip install SomePackage==1.0.4 # specific version
python -m pip install "SomePackage>=1.0.4" # minimum version
通常情况下,如果已经安装了合适的模块,尝试再次安装将不会产生任何效果。必须显式请求升级现有模块::
python -m pip install --upgrade SomePackage
有关的更多信息和资源 pip
它的功能可以在 Python Packaging User Guide _.
创建虚拟环境是通过 venv
模块。将包安装到活动虚拟环境中使用上面显示的命令。
我该怎么办...?¶
这些是一些常见任务的快速答案或链接。
…安装 pip
在Python 3.4之前的版本中?¶
python只开始捆绑 pip
使用python 3.4。对于早期版本, pip
需要“引导”,如《Python打包用户指南》中所述。
…仅为当前用户安装软件包?¶
路过 --user
选择权 python -m pip install
将仅为当前用户而不是系统的所有用户安装包。
…安装科学的python包?¶
许多科学的python包都有复杂的二进制依赖关系,目前使用 pip
直接。此时,用户通常更容易通过以下方式安装这些包: other means _而不是试图安装它们 pip
.
…使用并行安装的多个版本的python?¶
在Linux、Mac OS X和其他POSIX系统上,将版本控制的python命令与 -m
切换到运行的相应副本 pip
::
python2 -m pip install SomePackage # default Python 2
python2.7 -m pip install SomePackage # specifically Python 2.7
python3 -m pip install SomePackage # default Python 3
python3.4 -m pip install SomePackage # specifically Python 3.4
适当版本 pip
也可以使用命令。
在Windows上,使用 py
python启动程序与 -m
开关:
py -2 -m pip install SomePackage # default Python 2
py -2.7 -m pip install SomePackage # specifically Python 2.7
py -3 -m pip install SomePackage # default Python 3
py -3.4 -m pip install SomePackage # specifically Python 3.4
常见安装问题¶
在Linux上安装到系统python¶
在Linux系统上,通常会将python安装作为发行版的一部分。安装到此python安装中需要对系统进行根访问,如果组件意外升级,则可能会干扰系统包管理器和系统的其他组件的操作。 pip
.
在这样的系统上,当安装带有 pip
.
未安装PIP¶
有可能 pip
默认情况下不安装。一个潜在的解决办法是:
python -m ensurepip --default-pip
还有其他资源用于 installing pip. _
安装二进制扩展¶
python通常严重依赖于基于源代码的分发,最终用户将从源代码编译扩展模块,作为安装过程的一部分。
引入了对二进制的支持 wheel
格式,以及通过python打包索引为至少Windows和Mac OS X发布轮子的能力,随着时间的推移,这个问题预计会减少,因为用户更经常能够安装预构建的扩展,而不需要自己构建它们。
安装的一些解决方案 scientific software _还没有预建的 wheel
文件还可以帮助获取其他二进制扩展名,而无需在本地构建它们。