zoukankan      html  css  js  c++  java
  • Python安装第三方模块总结

    前言

    我们经常自嘲到:“人生苦短,我用Python”。其实这是有根据的,一来Python真的很简单,很容易上手;二来Python丰富且易用的第三方模块;这两个优点省去了大量重复造轮子的时间,节约了众多开发者的生命。所以现如今Python这么火,大行其道,也是有其原因的。

    虽然Python非常好用,但是作为初学Python的同学来说,在安装Python第三方模块时,总是感到疑惑甚至有点茫然。为什么这么说呢?在Python中安装第三方模块时,你会看到easy_installpip等,又会看到Eggwhl等,这些直接到底有什么关系呢?这些东西会把你搞的很晕,这里直接推荐一篇关于Python包管理工具解惑的文章,建议大家先去阅读一下这篇《Python包管理工具解惑》文章,然后再回过头来看我接下来的总结。

    在我们实际工作中,安装第三方模块时,我们无非会遇到以下的几种情况,而我这里就注重从实际的工作角度出发,重点讲讲我们工作中会使用的场景。

    源码安装

    几乎所有的第三方模块我们都可以在PyPI或者github上找到源码,这些第三方基本上都会提供tar.gz或者zip格式的源码压缩包,把代码包下载到本地并解压,在源码目录里会有一个setup.py的文件。从命令行进入到源码包根目录,执行以下语句:

    python setup.py install

    这样就完成了这个第三方模块的安装。

    包管理器安装

    相对于源码安装来说,通过在线使用包管理器安装,那更是快捷、简便!只需要一条命令,就可以自动完成第三方模块的下载与安装。

    在这篇《Python包管理工具解惑》文章里也提到了,Python常用的包管理器是pipeasy_install。它们会从PyPI的源里搜索我们需要的模块,找到后自动下载安装。PyPI是Python官方的第三方模块仓库,供所有开发者下载或上传代码。不过现在都是主推使用pip,所以后续大家在工作中,能使用pip,实在没法使用pip,再考虑easy_install,如果easy_install都不好使,那就源码安装吧。这个一般是我安装第三方模块所思考的顺序。

    通过pip安装第三方包很简单,比如我要安装pandas这个第三方模块,我从PyPI查询到这个模块后,官网页面上就提供了安装语句:

    pip install pandas

    但是,但是国内的网络环境你也知道,总是有那种或者这种的问题,导致在线安装速度很慢;所以呢,国内就有很多PyPI这个源的镜像,有名的就有清华大学的、豆瓣网的;我们可以设置通过这些国内的镜像来在线安装第三方模块。比如我要从清华大学提供的镜像源来安装pandas:

    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas

    当然了,每次输入这么一长串地址很麻烦,所以我们也可以把清华大学的镜像源设置为默认的安装源:

    pip config setglobal.index-url https://pypi.tuna.tsinghua.edu.cn/simple

    这样后续的安装就都会默认从清华大学镜像源去下载第三方模块。以下是国内比较好用的一些镜像源:

    • 豆瓣:https://pypi.douban.com/simple/
    • 阿里云:https://mirrors.aliyun.com/pypi/simple/
    • 中国科技大学:https://pypi.mirrors.ustc.edu.cn/simple/
    • 清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/

    离线安装

    关于离线安装这种场景,在我们实际工作中是经常会遇到的,因为我们的服务器基本上都是在内网,不可能连接到互联网上的各种镜像源,所以我们不得不面对离线安装第三方模块的问题。对于需要离线安装第三方模块包,一般都是使用以下两种方法:

    • 源码安装
    • 通过whl包安装

    关于如何使用源码安装,上面已经总结过了,这里重点说一下通过whl安装。

    通过PyPI查询到这个我们需要的第三方模块后,在下载列表都会看到一堆这样的下载文件:

    whl包下载

    wheel文件格式本质上是一个zip包格式,它使用.whl扩展名,用于python模块的安装,它的出现是为了替代Eggs。

    从上面的下载列表里,我们可以看到不同的平台、不同的Python版本都有不同的下载链接,我们根据我们的实际情况下载,然后通过pip命令就可以完成安装,比如这样:

    pip install C:UsersJellyDownloadspandas-0.24.2-cp36-cp36m-win32.whl

    这样就离线完成了第三方模块的安装。

    总结

    这篇文章从我们实际的工作疑惑和痛点出发,通过一篇文章来解决这些疑惑和痛点问题,还算是值得的,不去主动解决,这些问题可能就会一直困扰我们,所以后续这样的问题还会很多的,通过总结实际的问题来学习,也希望大家喜欢我这样总结的风格。

    对于Python中安装第三方模块,没有多少难点,只是语言发展过程中的历史原因,导致工具很多,让大家搞不清楚到底怎么安装,而我这篇文章就系统的对Python中安装第三方模块进行了总结,一扫之前的疑惑阴霾,后面使用Python的过程中,不再有这方面的疑惑。

  • 相关阅读:
    122. 买卖股票的最佳时机 II-leetcode
    SQL优化
    《C++ Primer Plus》读书笔记之十二—C++中的代码重用
    《C++ Primer Plus》读书笔记之十一—类继承
    《C++ Primer Plus》读书笔记之十—类和动态内存分配
    《C++ Primer Plus》读书笔记之九—使用类
    《C++ Primer Plus》读书笔记之八—对象和类
    一道算法题-换钱
    《C++ Primer Plus》读书笔记之七—内存模型和名称空间
    《C++ Primer Plus》读书笔记之六—函数探幽
  • 原文地址:https://www.cnblogs.com/wanglfhh/p/12401018.html
Copyright © 2011-2022 走看看