安装软件包#

本节介绍如何安装Python的基础知识包装.

值得注意的是,本文中的术语“包”用于描述要安装的软件包(即作为分布). 它不是指那种属于包裹在Python源代码中导入的(即模块容器)。在Python社区中,经常引用分布使用术语“包”。使用“分发”一词通常不受欢迎,因为它很容易与Linux发行版或其他更大的软件发行版混淆就像Python本身。

安装软件包的要求#

本节描述安装其他Python之前要遵循的步骤包装。

确保可以从命令行运行Python#

在继续之前,请确保您有Python,并且版本可从命令行获得。您可以通过运行以下命令进行检查:

蟒蛇3 --版本
py--版本

您应该得到一些输出,如蟒蛇 3.6.3。如果您没有Python,请从安装最新的3.x版本python.org网站或参考安装Python搭车指南中的Python部分。

注释

如果你是一个新手,遇到这样的错误:

>>>蟒蛇3 --版本
回溯(最近一次调用):文件“<stdin>”,行1,英寸<模块>
命名错误:未定义名称“python3”

这是因为此命令和本教程中建议的其他命令计划在(也称为终端慰问). 初学者阅读Python入门教程对于介绍如何使用操作系统的shell并与进行交互蟒蛇。

注释

如果您使用的是增强型shell,如IPython或Jupyter笔记本,您可以通过以下方式运行类似于本教程中的系统命令用一个!字符:

在[1]中:导入系统!{sys.executable}--版本Python 3.6.3版

建议写{系统可执行}而不是平淡蟒蛇在里面以确保命令在Python安装匹配中运行当前正在运行的笔记本(可能不是同一个Python安装蟒蛇命令引用)。

注释

由于大多数Linux发行版处理Python 3的方式迁移,Linux用户使用系统Python而不创建虚拟环境第一应该取代蟒蛇本教程中的命令具有蟒蛇3蟒蛇 -米 pip(点阵)命令蟒蛇3 -米 pip(点阵) --用户.执行使用运行本教程中的任何命令苏多:如果您获得权限错误,请返回到有关创建虚拟环境的部分,设置一个,然后继续编写教程。

确保可以从命令行运行pip#

此外,您需要确保pip(点阵)可用。你可以通过运行以下命令进行检查:

蟒蛇3 -米 pip(点阵) --版本
py-m pip—版本

如果从源代码安装Python,则使用python.org网站,或通过自制软件你应该已经有了pip。如果您在Linux上并已安装使用操作系统软件包管理器,可能需要单独安装pip,请参阅使用Linux包管理器安装pip/setuptools/wheel.

如果pip(点阵)尚未安装,然后首先尝试从标准库:

蟒蛇3 -米 保证 --默认端口
py-m ensurepip--默认-pip

如果这仍然不允许你跑步蟒蛇 -米 pip(点阵):

  • 安全下载获取pip.py [1]

  • 运行蟒蛇 获取pip.py.[2]这将安装或升级pip。此外,它将安装设置工具如果他们是尚未安装。

    警告

    如果您正在使用由您的操作系统或其他包管理器。get-pip.py没有与这些工具协调,并可能将您的系统保留在状态不一致。你可以使用蟒蛇 获取pip.py --前缀=/usr/local/要在中安装/usr/本地设计用于本地安装软件。

确保pip、setuptools和轮子是最新的#

While期间pip(点阵)仅此一项就足以从预先构建的二进制档案中进行安装,最新的设置工具项目很有用为了确保您也可以从源存档安装:

蟒蛇3 -米 pip(点阵) 安装 --升级 pip(点阵) 设置工具 
py-m pip安装--升级pip setuptools wheel

(可选)创建虚拟环境#

请参见下面的部分有关详细信息,但这里是基本的静脉 []要在典型Linux系统上使用的命令:

蟒蛇3 -米 静脉 tutorial_env(教程_打开)来源 tutorial_env/bin/激活
py-m venv tutorial_envtutorial_env\Scripts\activate

这将在tutorial_env(教程_打开)子目录,并将当前shell配置为将其用作默认shell蟒蛇环境。

创建虚拟环境#

Python“虚拟环境”允许Python包装安装在特定应用的隔离位置,而不是全球安装。如果您希望安全安装全局命令行工具,看见安装独立命令行工具.

假设您有一个需要LibFoo版本1的应用程序,但另一个需要应用程序需要版本2。如何使用这两个应用程序?如果你将所有内容安装到/usr/lib/python3.6/site-packages中(或您的平台的标准位置是),很容易出现以下情况无意中升级了不应升级的应用程序。

或者更一般地说,如果你想安装一个应用程序并让它保持原样,该怎么办?如果应用程序正常工作,则其库或其版本中的任何更改库可能会破坏应用程序。

另外,如果你不能安装怎么办包装进入全局站点包目录?例如,在共享主机上。

在所有这些情况下,虚拟环境都可以帮助您。他们有自己的安装目录,并且它们不与其他虚拟机共享库环境。

目前,有两种常用的工具用于创建Python虚拟环境:

基本用法如下:

使用静脉:

蟒蛇3 -米 静脉 <直飞>来源 <DIR>/bin/激活
py-m通风<目录><总监>\脚本\激活

使用虚拟(virtualenv):

蟒蛇3 -米 虚拟(virtualenv) <直飞>来源 <DIR>/bin/激活
虚拟(virtualenv)<目录><总监>\脚本\激活

有关更多信息,请参阅静脉文档或这个虚拟(virtualenv)文档。

使用来源在Unix shell下确保虚拟环境的变量设置在当前shell,而不是子流程中的有用的效果)。

在上述两种情况下,Windows用户应该使用来源命令,但应该运行激活直接从命令shell编写脚本,如下所示:

<总监>\脚本\激活

直接管理多个虚拟环境可能会变得乏味,因此依赖关系管理教程引入了更高级别的工具,Pipenv公司,它自动管理一个单独的您所处理的每个项目和应用程序的虚拟环境。

使用pip进行安装#

pip(点阵)是推荐的安装程序。下面,我们将介绍最常见的使用场景。有关更多详细信息,请参阅pip文档,其中包括一个完整的参考指南.

从PyPI安装#

的最常见用法pip(点阵)是从Python包索引使用需求说明符一般来说,需求说明符是由项目名称后跟可选版本说明符。支持的说明符的完整描述可以是在中找到版本说明符规范.以下是一些示例。

要安装最新版本的“SomeProject”:

蟒蛇3 -米 pip(点阵) 安装 “某个项目”
py-m管道安装“某个项目”

要安装特定版本,请执行以下操作:

蟒蛇3 -米 pip(点阵) 安装 “某个项目==1.4”
py-m管道安装“某个项目==1.4”

要安装大于或等于一个版本而小于另一个版本,请执行以下操作:

蟒蛇3 -米 pip(点阵) 安装 “某个项目>=1,<2”
py-m管道安装“某个项目>=1,<2”

要安装以下版本兼容的具有特定版本:[4]

蟒蛇3 -米 pip(点阵) 安装 “某个项目~=1.4.2”
py-m管道安装“某个项目~=1.4.2”

在本例中,这意味着安装任何“==1.4.*”版本“>=1.4.2”.

来源分布与车轮#

pip(点阵)可以从以下任一位置安装源分布(sdist)车轮,但如果两者都存在在PyPI上,pip将首选兼容的。您可以覆盖pip的默认行为,例如使用其–无二进制选项。

车轮是预建的分布来源分配(sdist)尤其是当项目包含已编译的扩展。

如果pip(点阵)找不到要安装的轮子,它将在本地构建轮子并缓存它以备将来安装,而不是重新构建源分发未来。

正在升级包#

升级已安装的Some项目PyPI的最新版本。

蟒蛇3 -米 pip(点阵) 安装 --升级 Some项目
py-m pip安装--升级SomeProject

安装到用户站点#

要安装包装当前用户,使用--用户标志:

蟒蛇3 -米 pip(点阵) 安装 --用户 Some项目
py-m pip安装--用户SomeProject

有关更多信息,请参阅用户安装部分来自pip文档。

请注意--用户标志在虚拟环境中无效-所有安装命令都会影响虚拟环境。

如果Some项目定义任何命令行脚本或控制台入口点,--用户将导致它们安装在用户群的二进制文件目录,该目录可能已经存在于shell的路径。(从版本10开始,当将任何脚本安装到外部目录路径.)如果脚本在安装后shell中不可用,您需要添加目录到您的路径:

  • 在Linux和macOS上,您可以通过运行蟒蛇 -米 网站 --用户库并添加箱子直到最后。例如,这通常会打印~/.本地(带有~扩展到绝对值主目录的路径),因此您需要添加~/.本地/bin到您的路径。您可以设置您的路径永久由修改~/.配置文件.

  • 在Windows上,您可以通过运行第页 -米 网站 --用户端和更换现场包装具有脚本。对于例如,这可以返回C: \Users\Username\AppData\Roaming\Python36\站点包所以你会需要设置您的路径包括C: \用户\用户名\AppData\Roaming\Python36\Scripts。您可以设置用户路径永久位于控制面板。您可能需要注销路径更改才能生效。

需求文件#

安装中指定的要求列表需求文件.

蟒蛇3 -米 pip(点阵) 安装 -第页 要求.txt
py-m pip安装-r要求.txt

从VCS安装#

以“可编辑”模式从VCS安装项目。对于语法,请参阅pip关于VCS支持.

蟒蛇3 -米 pip(点阵) 安装 -e(电子) Some项目 @ 吉特+https://git.repo/some_pkg.git网站          #来自git蟒蛇3 -米 pip(点阵) 安装 -e(电子) Some项目 @ 汞+https://hg.repo/some_pkg(英文)                #来自汞蟒蛇3 -米 pip(点阵) 安装 -e(电子) Some项目 @ svn公司+svn://svn.repo/some_pkg/trunk/         #来自svn蟒蛇3 -米 pip(点阵) 安装 -e(电子) Some项目 @ 吉特+https://git.repo/some_pkg.git网站@特征  #从一个分支
py-m pip安装-e SomeProject@git+https://git.repo/some_pkg.git网站#来自gitpy-m pip install-e SomeProject@hg+https://hg.repo/some_pkg(英文)#来自mercurialpy-m pip安装-e SomeProject@svn+svn://svn.repo/some_pkg/trunk/来自svn的#py-m pip安装-e SomeProject@git+https://git.repo/some_pkg.git网站@来自分支的功能#

从其他索引安装#

从备用索引安装

蟒蛇3 -米 pip(点阵) 安装 --索引-url http://my.package.repo/simple/ Some项目
py-m pip安装--索引-urlhttp://my.package.repo/simple/Some项目

在安装期间搜索其他索引PyPI公司

蟒蛇3 -米 pip(点阵) 安装 --超诱导-url http://my.package.repo/simple Some项目
py-m管道安装--额外诱导-urlhttp://my.package.repo/simpleSome项目

从本地src树安装#

从本地src安装开发模式,即,以这样一种方式,项目似乎已安装,但尚未安装仍然可以从src树中编辑。

蟒蛇3 -米 pip(点阵) 安装 -e(电子) <路径>
py-m管道安装-e<路径>

您也可以从src正常安装

蟒蛇3 -米 pip(点阵) 安装 <路径>
py-m管道安装<路径>

从本地存档安装#

安装特定的源存档文件。

蟒蛇3 -米 pip(点阵) 安装 ./downloads/SomeProject-1.0.4.tar.gz
py-m管道安装/下载/SomeProject-1.0.4.tar.gz

从包含存档文件的本地目录安装(并且不检查PyPI公司)

蟒蛇3 -米 pip(点阵) 安装 --无因德克斯 --查找链接=文件:///local/dir/ Some项目蟒蛇3 -米 pip(点阵) 安装 --无因德克斯 --查找链接=/本地/目录/ Some项目蟒蛇3 -米 pip(点阵) 安装 --无因德克斯 --查找链接=相对/方向/ Some项目
py-m pip安装--no-index--find-links=文件:///local/dir/Some项目py-m pip安装--no-index--find-links=/local/dir/SomeProjectpy-m pip安装--no-index--find-links=relative/dir/SomeProject

从其他来源安装#

从其他数据源安装(例如Amazon S3存储)您可以创建一个显示数据的助手应用程序格式符合简单存储库API:,并使用--超诱导-url指示pip使用该索引的标志。

./s3助手 --端口=7777蟒蛇 -米 pip(点阵) 安装 --超诱导-url 本地主机:7777 Some项目

安装预发行版#

查找预发布和开发版本,以及稳定版本。默认情况下,pip只查找稳定版本。

蟒蛇3 -米 pip(点阵) 安装 --预(pre) Some项目
py-m pip安装--预SomeProject

安装“Extras”#

附加功能是软件包的可选“变体”,可能包括附加的依赖项,从而启用附加的功能从包中。如果您希望为以下软件包安装额外的您知道发布了一个,可以将其包含在pip安装命令中:

蟒蛇3 -米 pip(点阵) 安装 “SomePackage[PDF]”蟒蛇3 -米 pip(点阵) 安装 'SomePackage[PDF]==3.0'蟒蛇3 -米 pip(点阵) 安装 -e(电子) '.[PDF]'  #当前目录中的可编辑项目
py-m管道安装“SomePackage[PDF]”py-m管道安装“SomePackage[PDF]==3.0”py-m管道安装-e“.[PDF]”#当前目录中的可编辑项目