安装软件包

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

需要注意的是,这个上下文中的“包”一词被用作分布(即要安装的一组软件),而不是指包装在Python源代码中导入(即模块的容器)。Python社区中常见的引用分布使用“包”一词。使用“分发”这个术语通常是不可取的,因为它很容易与Linux发行版或另一个更大的软件发行版(如Python本身)混淆。

安装软件包的要求

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

确保可以从命令行运行Python

在进一步研究之前,请确保您有Python,并且您的命令行中提供了预期的版本。您可以通过运行以下命令(win+r打开命令行,然后运行如下命令)来检查这一点:

python --version

你应该得到一些输出,比如Python 3.6.3...如果您没有Python,请从python.org或参考安装Python“Hitchhiker Python指南”一节。

如果您是新来的,并且遇到这样的错误:

>>>

>>> python --version
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'python' is not defined

这是因为本教程中的这个命令和其他建议的命令打算在(又称a终端控制台)。见Python for初学者入门教程有关使用操作系统的shell和与Python交互的介绍。

如果您使用的是增强的shell(如IPython或木星笔记本),则可以运行系统命令,如本教程中的命令,方法是使用!性格:

In [1]: import sys
!{sys.executable} --version
Python 3.6.3

建议写{sys.executable}而不是平淡python为了确保在Python安装中运行与当前正在运行的记事本相匹配的命令(这可能不是与python(命令指)。

由于大多数Linux发行版处理Python 3迁移的方式,使用系统Python而不创建虚拟环境的Linux用户应该首先替换python本教程中的python3pip命令用pip3 --user...做运行本教程中的任何命令sudo:如果您获得了权限错误,请回到关于创建虚拟环境的部分,设置一个环境,然后继续编写教程。

确保您可以从命令行运行pip。

另外,你需要确保PIP可用。您可以通过运行以下命令来检查这一点:

pip --version

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

如果pip还没有安装,那么首先尝试从标准库引导它:

python -m ensurepip --default-pip

如果这还不能让你跑pip:

  • 安全下载get-pip.py 1

  • python get-pip.py2这将安装或升级pip。此外,它将安装设置工具车轮如果他们还没安装好的话。

    警告

    如果您使用的是由操作系统或其他包管理器管理的Python安装,请小心。py与这些工具不协调,可能会使您的系统处于不一致的状态。你可以用python get-pip.py --prefix=/usr/local/安装在/usr/local这是为本地安装的软件设计的。

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

pip单独安装就足以从预构建的二进制档案中安装,直到最新的副本。setuptoolswheel项目对于确保您也可以从源档案中安装非常有用:

python -m pip install --upgrade pip setuptools wheel

或者,创建一个虚拟环境。

看见下面一节关于细节,但是这里是基本的文夫 3命令用于典型的Linux系统:

python3 -m venv tutorial_env
source tutorial_env/bin/activate

这将在tutorial_env子目录,并配置当前shell以将其用作默认值。python环境。

创建虚拟环境

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

假设您有一个需要LibFoo版本1的应用程序,而另一个应用程序需要版本2。如果将所有内容安装到/usr/lib/python3.6/site-Package(或平台的标准位置)中,那么很容易在无意中升级不应该升级的应用程序的情况下结束。

或者更广泛地说,如果您想安装一个应用程序而不安装它呢?如果应用程序工作正常,那么其库或这些库的版本中的任何更改都会破坏应用程序。

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

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

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

  • 文夫默认情况下在Python3.3及更高版本中可用,并安装PIP设置工具在Python3.4及更高版本中创建的虚拟环境。

  • 虚拟人需要单独安装,但支持Python2.7+和Python3.3+,并且PIP设置工具车轮默认情况下总是安装在创建的虚拟环境中(不管Python版本如何)。

基本用法如下:

使用文夫:

python3 -m venv <DIR>
source <DIR>/bin/activate

使用虚拟人:

virtualenv <DIR>
source <DIR>/bin/activate

有关更多信息,请参见文夫医生或虚拟人医生。

使用来源在Unixshell下,确保虚拟环境的变量是在当前shell中设置的,而不是在子进程中设置的(子进程随后消失,没有任何有用的效果)。

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

<DIR>\Scripts\activate

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

使用pip安装

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

从PyPI安装

最常见的用法PIP是从Python包索引使用需求说明符...一般来说,需求说明符由一个项目名称和一个可选的项目名称组成。版本说明符佩普440包含全规格当前支持的说明符。下面是一些例子。

安装最新版本的“SomeProject”:

pip install "SomeProject"

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

pip install "SomeProject==1.4"

安装大于或等于一个版本而小于另一个版本:

pip install "SomeProject>=1,<2"

安装的版本“兼容”有一个特定的版本:4

pip install "SomeProject~=1.4.2"

在本例中,这意味着安装“=1.4.*”版本,也就是“>=1.4.2”版本。

源分布与车轮

PIP可以从源分布(Sdist)车轮,但是如果两者都出现在pypi上,pip会更喜欢兼容的。车轮.

车轮是预建的分布提供更快安装速度的格式源分布(Sdist),尤其是当项目包含已编译的扩展时。

如果PIP如果找不到要安装的车轮,它将在本地构建一个车轮并将其缓存以供将来安装,而不是在将来重新构建源分布。

升级包

升级已安装的SomeProject来自PyPI的最新报道。

pip install --upgrade SomeProject

安装到用户站点

安装包裹与当前用户隔离的,请使用--user国旗:

pip install --user SomeProject

有关更多信息,请参见用户安装从PIP文档中分离出来。

注意,--user当在虚拟环境中时,标志没有效果-所有安装命令都会影响虚拟环境。

如果SomeProject定义任何命令行脚本或控制台入口点,--user将使它们安装在用户群的二进制目录,该目录可能已经存在,也可能没有出现在shell的PATH...(从版本10开始,pip在将脚本安装到外部目录时显示警告。PATH)如果安装后shell中的脚本不可用,则需要将该目录添加到PATH:

  • 在linux和macos上,您可以通过运行python -m site --user-base加上bin一直到最后。例如,这通常会打印~/.local(与~扩展到指向主目录的绝对路径),因此需要添加~/.local/bin敬你的PATH...你可以把你的PATH永久地修改~/.剖面.

  • 在Windows上,您可以通过运行py -m site --user-site替换site-packages带着Scripts...例如,这可能会返回C:\Users\Username\AppData\Roaming\Python36\site-packages所以你需要把你的PATH包括C:\Users\Username\AppData\Roaming\Python36\Scripts...您可以设置您的用户。PATH永久保存在控制面板...您可能需要注销PATH更改生效。

需求文件

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

pip install -r requirements.txt

从VCS安装

在“可编辑”模式下从VCS安装一个项目。有关语法的完整细分,请参见pip关于风投支持.

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

从其他索引安装

从备用索引安装

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

在安装期间搜索附加索引,PyPI

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

从本地src树安装

从本地src安装发展模式,即项目似乎已安装,但仍可从src树中编辑。

pip install -e <path>

您也可以正常地从src安装。

pip install <path>

从本地档案安装

安装特定的源存档文件。

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

从包含档案的本地目录安装(不要检查PyPI)

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

从其他来源安装

要从其他数据源(例如AmazonS 3存储)安装,可以创建一个在Pep 503符合索引格式,并使用--extra-index-url标志指示pip使用该索引。

./s3helper --port=7777
pip install --extra-index-url http://localhost:7777 SomeProject

安装预放映机

除了稳定的版本之外,还可以找到预发布和开发版本。默认情况下,PIP只找到稳定的版本。

pip install --pre SomeProject

安装Setuptools“Extras”

安装setuptools附加程序.

$ pip install SomePackage[PDF]
$ pip install SomePackage[PDF]==3.0
$ pip install -e .[PDF]==3.0 # editable project in current directory

如何在 PyPI安装python的软件包?的更多相关文章

  1. Linux 下安装python软件包(pip、nose、virtualenv、distribute )

    新手刚开始学习Python,目前学习<笨方法学python>ing- 在学习习题46时需要安装几个软件包:pip.nose.virtualenv.distribute !在此记录Linux ...

  2. 如何在Pypi上发表自己的Python库

    背景 最近兴趣使然写了几个Python库,也发布到了Pypi上,虽然没什么人下载,但自己在其他机器上用着也会很方便.这里我向大家介绍一下如何在Pypi上发表自己的Python库. 准备 注册账号 很显 ...

  3. RHEL6从源码安装python及其他软件包

    RHEL6从源码安装python及其他软件包 ## install ssl $ sudo yum install openssl-devel or: $ sudo apt-get install li ...

  4. [置顶] 如何在Windows 7 64位安装Python,并使用Matplotlib绘图

    1.     安装Python 我使用的是Windows 7 64 bit,所以我从Python官网下载python-2.7.5.amd64.msi,安装步骤如下: 1)        安装windo ...

  5. pip安装python包出现Cannot fetch index base URL http://pypi.python.org/simple/

    pipinstall***安装python包,出现 Cannot fetch index base URL  http://pypi.python.org/simple /错误提示或者直接安装不成功. ...

  6. Linux基础--------监控系统、进程管理、软件包管理-------free、dd、kill、 rpm、yum、源码安装python

    作业一:1) 开启Linux系统前添加一块大小为15G的SCSI硬盘 2) 开启系统,右击桌面,打开终端 3) 为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区 ...

  7. 如何在 CentOS 7 上安装 Python 3

    当前最新的 CentOS 7.5 默认安装的是 Python 2.7.5,并且默认的官方 yum 源中不提供 Python 3 的安装包.这里主要介绍两种在 CentOS 7 中安装 Python 3 ...

  8. 如何在win7上面安装python的包

    最近在win7上面搞python,然后写的一些代码涉及到了对Excel的读写.所以需要用到包xlrd xlwt  xlutils. 但问题是这些包import后显示的是找不到.错误提示是:Import ...

  9. python编程之如何在Windows上安装python

    一.安装python 首先检查你的系统里是否安装了python,开始菜单里点击运行输入cmd打开一个命令窗口,或键盘快捷键windows+R打开,在窗口中输入python并回车,如果出现了Python ...

随机推荐

  1. vue2.0从头开发项目管理系统

    1.自己的github建一个项目. 2.本地vue2.0项目初始化. 安装node.js,检查node版(node -v). 安装webpack(npm install webpack -g),检查w ...

  2. SpringBoot整合Actuator进行健康监控

    一.Actuator介绍 SpringBoot自带监控功能Actuator,通过 restful api 请求来监管.审计.收集应用的运行情况,可以帮助实现对程序内部运行情况监控,比如监控状况.Bea ...

  3. 计算机网络-网络层(3)DHCP协议

    主机获得IP地址,除了可以通过静态配置,还可以通过动态主机配置协议DHCP: Dynamic Host Configuration Protocol从服务器动态获取IP地址.子网掩码.默认网关地址.D ...

  4. 完美解决方案-雪花算法ID到前端之后精度丢失问题

    最近公司的一个项目组要把以前的单体应用进行为服务拆分,表的ID主键使用Mybatis plus默认 的雪花算法来生成. 快下班的时候,小伙伴跑过来找我,:"快给我看看这问题,卡这卡了小半天了 ...

  5. “网络巨轮”BGP的高级装备(增强配置)

    引入 如下图在很多时候,BGP建立对等体的时候,要去建立大量的EBGP和IBGP对等体,IBGP还要全连接,这就给我们带来了大量重复的工作,路由表就会变得很庞大,区域内和区域之间就会很难管理,以下这些 ...

  6. 【新鲜出炉的个人项目】基于 Flink 的商品推荐系统

    FlinkCommodityRecommendationSystem Recs FlinkCommodityRecommendationSystem(基于 Flink 的商品推荐系统) 1. 前言 系 ...

  7. Azure Storage 系列(一)入门简介

    一,引言 今天作为新的Azure 资源介绍的开篇,我们来学习一个新的服务,Azure Storage.众所周知,我们实际在开发过程中,会需要存储一些比如说日志,图片,等等,各种类型的数据.比如说存储图 ...

  8. windows 下编译libcurl

    因为linux平台采用了libcurl,有一个程序移植到到windows平台,再linux采用libcurl.在windows下准备也采用该库.在网上搜索了几位同行写的,步骤上面有缺失. 本文将以详细 ...

  9. guzzle下载图片(laravel+vue)

    先再laravel安装guzzle扩展包:composer require guzzlehttp/guzzle 之后再控制器操作: use GuzzleHttp\Client; //远程api数据的获 ...

  10. Laravel ServiceProvider注册过程及简单使用

    Laravel ServiceProvider注册过程及简单使用 还记得facade注册流程吗?回顾下 在bootstrap/app.php中返回$app实例后,通过singleton方法绑定了三个实 ...