如何安装 Python 的第三方模块

入门教程、案例源码、学习资料、读者群

请访问: python666.cn


大家好,欢迎来到 Crossin的编程教室 !


正所谓“人生苦短,我用 Python”。Python 的一大优势就是有丰富且易用的第三方模块,省去了大量重复造轮子的时间,节约了众多开发者的生命。对于已经熟悉 Python 开发的人来说,安装第三方模块是家常便饭的事情。但如果是刚入门的新手,很可能会被折腾一番。所以我来简单地科普一下,如何安装 Python 的第三方模块。


Python安装第三方模块有很多种方式,最常用的两种:通过包管理器、直接下载源码安装


1. 包管理器


很多系统和语言都提供了包管理器。你可以把“包管理器”想象成一个类似应用商店的工具。Python 的包管理器里就是各种第三方模块。有了它,不用998,也不用98,只需要一条命令,就可以自动帮你下载并安装。


Python 常用的包管理器是 pip。他们会从一个叫做 PyPI 的源里搜索你要的模块,找到后自动下载安装。PyPI 是 Python 官方的第三方模块仓库,供所有开发者下载或上传代码。

如果你用的是 Mac 或者 Linux,那么同 Python 一样,你的系统里应该自带了 pip。而如果你是 Windows,那么在安装 Python 的时候,勾选 pipAdd python.exe to Path,就会帮你同时安装好 pip 并设置好环境变量中的路径。如果无法使用 pip,确认 Python 安装目录下的 Scripts 子目录中有 pip,并且这个子目录的路径被加在了环境变量 Path 中。如果没有 pip,则要通过下载 setuptools 安装,或建议直接重新安装一遍 Python。


IPython 为例,通过 pip 命令进行安装,只需要在命令行输入:

pip install ipython

如果一切正常,网络不抽风,只要稍微等待,就可以看到下载进度,自动安装完就可使用。如果 Mac/Linux 下提示 Permission denied 之类的权限问题,在命令前加上 sudo。


IPython 是一个增强版的 Python shell,在命令行输入 ipython 就可以打开使用。比默认运行 python 进入的那个更好使,在里面调试代码会很方便。不过 windows 的话,还要再用 pip 装一个 pyreadline 的模块,才能使用 IPython 的 tab 键自动补全功能。(用 Windows 开发就是事多)


如果你不是很明确要下载的模块名,也可以进行搜索,比如:

pip search ipython


但因为pip的仓库服务器在国外,常常会因为网络连接问题而导致下载太慢或者失败。针对这种情况,一种解决方案就是“换源”,通过配置将仓库地址更换为国内的镜像网站。或者直接在命令后面加上 -i 参数指定下载源,例如:

pip install ipython -i https://mirrors.aliyun.com/pypi/simple matplotlib


这里提供几个国内源地址:


  • 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple

  • 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/

  • 阿里云 http://mirrors.aliyun.com/pypi/simple/

  • 豆瓣 http://pypi.douban.com/simple/


一般来说,pip 搞定绝大多数的模块安装了。一不,还可以尝试下面的另一种方式。

2. 源码安装


几乎所有第三方模块都可以在 PyPI 或 github 上找到源码,都会提供 zip、tar 等格式的压缩包。把代码压缩包下载到本地并解压,应该会看到一个 setup.py 的文件。在命令行进入其所在目录,执行:

python setup.py install

就会安装这个第三方模块。最终效果和用包管理器是一样的。


无论哪种方法,都会将第三方模块代码安装至 Python 的路径下,根据系统不同,位置有所区别,大致都是叫做 site-packagesdist-packages。所以对于一些没有其他依赖,不需要编译其他语言的纯 Python 代码包,也可以直接手动将源码复制到 site-packages 或 dist-packages 目录下。只要路径正确,就可以在你的代码里引入这些模块。


友情提醒一些坑:

  • 安装第三方模块前,请确认它所支持的版本,是不是包含你所使用的 Python 版本。

  • 少数复杂的包可能无法直接一条命令安装成功,特殊情况特殊对待,搜索引擎会给你指引。

  • 如果你的电脑上装有多个版本的 Python,使用 pip 很可能会造成混乱。对于这个问题,virtualenv 是一个很好的解决方案,下次会专门来讲一讲。


另外,有一个叫做 Awesome Python 的项目,列出了各类优秀的、实用的、有意思的 Python 库:

https://github.com/jobbole/awesome-python-cn


感谢转发点赞的各位~

_往期文章推荐_

网页文本解析利器“美丽汤”




如需了解付费精品课程教学答疑服务
请在Crossin的编程教室内回复: 666

请使用浏览器的分享功能分享到微信等