关于 pip 的 15 个使用小技巧
认识pip
众所周知,pip可以对python的第三方库进行安装、更新、卸载等操作,十分方便。
pip的全称:package installer for python,也就是Python包管理工具。
可能有些人用了很久pip,但还不清楚包管理工具是个啥。
我们先从Python这门语言说起,Python之所以受欢迎不光是因为它简单易学,更重要的是它有成千上万的宝藏库。
这些库相当于是已经集成好的工具,只要安装就能在Python里使用。它们可以处理各式各样的问题,无需你再造轮子,而且随着社区的不断更新维护,有些库越来越强大,几乎能媲美企业级应用。
那么这些工具库怎么下载安装呢?它们被放在一个统一的“仓库”里,名叫PyPi(Python Package Index),所有的库安装都是从这里调度。
有了仓库之后,还需要有管理员,pip就是这样一个角色。pip把库从PyPi取出来,然后安装到Python里,还可以管理安装好的库,比如更新、查看、搜索、卸载等等。
总的来说,pip的Python第三方库的大管家,搞懂它,会让你省很多事。
下面总结了30个pip使用过程中的常识和技巧,供大家参考。
「注:因为pip是一个命令行程序,所以pip一般都在命令行中执行各种操作」
1、安装pip
从Python 3.4开始,pip已经内置在Python中,所以无需再次安装。
如果你的Python版本没有pip,那可以使用下面两种方法安装。
(1) 命令行中输入easy_install pip,非常快捷
(2) 在下面网址中下载pip安装文件,然后解压到python scripts目录中,执行python setup.py install安装即可
下载网址:https://pypi.org/project/pip/#files
下载文件:

2、查看pip版本
pip --version

3、升级pip
如果pip的版本太低,可以升级当前版本
pip install --upgrade pip
4、获取帮助
想了解如何使用pip,以及pip有哪些功能,执行下面语句可以获取详细教程:
pip help
5、安装库
使用pip安装第三方库,执行下面语句
pip install package_name
指定package版本:
pip install package_name==1.1.2
比如说,我要安装3.4.1版本的matplotlib
pip install matplotlib==3.4.1
6、批量安装库
如果一个项目需要安装很多库,那可以批量安装:
pip install -r e:\requirements.txt
requirements.txt文件内容格式如下:

7、使用wheel文件安装库
这种方法适合离线安装,wheel文件是库的源文件,可以下载后放到本地安装。
步骤如下:
(1) 在下面网站里找相应库的.whl文件
https://www.lfd.uci.edu/~gohlke/pythonlibs/
(2) 下载.whl文件,注意对应的版本

(3) 在.whl所在文件夹内,按Shift键+鼠标右键,打开CMD窗口或者PowerShell
(4) 输入命令:
pip install matplotlib‑3.4.1‑cp39‑cp39‑win_amd64.whl
即可完成安装
8、卸载库
安装好的库可以再卸载:
pip uninstall package_name
9、升级库
对当前库进行版本升级:
pip install --upgrade package_name
10、查看库信息
pip show -f package_name

11、查看已安装的库
列出所有已安装的第三方库和对应版本
pip list

12、将库列表保存到指定文件中
把已经安装的库信息保存到到本地txt文件中:
pip freeze > requirements.txt

13、查看需要升级的库
目前已经安装的库中,看哪些需要版本升级
pip list -o

14、检查兼容问题
验证已安装的库是否有兼容依赖问题
pip check package-name

15、下载库到本地
将库下载到本地指定文件,保存为whl格式
pip download package_name -d "要保存的文件路径"

附:更换pip源
很多人抱怨pip安装库有些时候太慢了,那是pip源的问题。
前面说过pip从PyPi中下载库文件,但由于PyPi服务器在国外,访问起来很慢。
但国内提供了很多镜像源,用来替代PyPi,像清华源、豆瓣源、阿里云源等。
这些镜像源备份了PyPi里的数据,由于服务器在国内,速度会快很多。
但镜像源数据有滞后性,比如说清华源的pypi 镜像每 5 分钟同步一次。
使用镜像源有两种方式,以清华源为例:
(1) 临时使用
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package matplotlib
除了matplotlib是要安装的库名外,其他都是固定格式
(2) 设为默认
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
设为默认后,以后安装库都是从清华源下载,而且无需再加镜像源网址
附主流镜像源地址
清华:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
豆瓣:http://pypi.douban.com/simple/
关于 pip 的 15 个使用小技巧的更多相关文章
- 必知的 15 个jQuery小技巧(干货)
jQuery小技巧(干活) 1.返回顶部按钮 你可以利用 animate 和 scrollTop 来实现返回顶部的动画,而不需要使用其他插件. $('a.top').click(function(){ ...
- 前端程序员应该知道的15个 jQuery 小技巧
下面这些简单的小技巧能够帮助你玩转jQuery. 返回顶部按钮 预加载图像 检查图像是否加载 自动修复破坏的图像 悬停切换类 禁用输入字段 停止加载链接 切换淡入/幻灯片 简单的手风琴 让两个div高 ...
- 前端程序员应该知道的 15 个 jQuery 小技巧
下面这些简单的小技巧能够帮助你玩转jQuery. 返回顶部按钮 预加载图像 检查图像是否加载 自动修复破坏的图像 悬停切换类 禁用输入字段 停止加载链接 切换淡入/幻灯片 简单的手风琴 让两个div高 ...
- 15个jQuery小技巧
1.返回顶部按钮通过使用jQuery中的animate 和scrollTop 方法,不用插件就可以创建一个滚动到顶部的简单动画:// Back to top $('.top').click(funct ...
- 15.6.8-sql小技巧
取月头月尾: declare @someDay datetime,@firstDay datetime,@endDay datetime set @someDay='2015.2.2' ,) ,) s ...
- 聊聊sql优化的15个小技巧
前言 sql优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到. 如果某天你负责的某个线上接口,出现了性能问题,需要做优化.那么你首先想到的很有可能是优化sql语句,因为它 ...
- 15个你不得不知道的Chrome dev tools的小技巧
转载自:https://www.imooc.com/article/2559 谷歌浏览器如今是Web开发者们所使用的最流行的网页浏览器.伴随每六个星期一次的发布周期和不断扩大的强大的开发功能,Chro ...
- 关于Python ,requests的小技巧
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/xie_0723/article/details/52790786 关于 Python Request ...
- Python Requests 小技巧总结
关于 Python Requests ,在使用中,总结了一些小技巧把,分享下. 1:保持请求之间的Cookies,我们可以这样做. import requests self.session = req ...
随机推荐
- div和img垂直居中的方法
div垂直居中可以使用height和line-height,多个div的话就不适用了. 可以使用下面的方式垂直居中 <div class="parent"> <d ...
- kubernetes之副本控制器(RC/RS)
1.了解ReplicationController ReplicationController是一种kubernetes资源,可确保它的pod始终保持运行状态. 如果pod因任何原因消失(例如节点从集 ...
- 基于 Electron 实现 uTools 的超级面板
前言 为了进一步提高开发工作效率,最近我们基于 electron 开发了一款媲美 uTools 的开源工具箱 rubick.该工具箱不仅仅开源,最重要的是可以使用 uTools 生态内所有开源插件!这 ...
- 二叉搜索树(Binary Search Tree)(Java实现)
@ 目录 1.二叉搜索树 1.1. 基本概念 1.2.树的节点(BinaryNode) 1.3.构造器和成员变量 1.3.公共方法(public method) 1.4.比较函数 1.5.contai ...
- POJ 1279 Art Gallery 半平面交 多边形的核
题意:求多边形的核的面积 套模板即可 #include <iostream> #include <cstdio> #include <cmath> #define ...
- 什么是forward和include?
请求包含的例子 第一个Servlet (DispatcherServlet) @Override protected void doGet(HttpServletRequest req, HttpSe ...
- IDEA详细配置+优秀插件
目录 IDEA破解 Settings配置 配置 settings 字体 关闭IDEA更新 设置IDEA打开为项目选择界面 自动导入包配置 显示方法的分割线 滚轮设置字体大小 智能提示忽略大小写 Tab ...
- Spring:Spring项目多接口实现类报错找不到指定类
spring可以通过applicationContext.xml进行配置接口实现类 applicationContext.xml中可以添加如下配置: 在application.properties中添 ...
- 大数据-Hadoop虚拟机的准备以及配置(三台机子)
虚拟机的准备 修改静态IP(克隆的虚拟机) vim /etc/udev/rules.d/70-persistent-net.rules 配置网络: Vim /etc/sysconfig/network ...
- php弱类型比较
前言:今天XCTF题目中出现了弱类型比较,特别过来记录一下, 0x01: == 是弱类型比较,两个不同类型比较时,会自动转换成相同类型后再比较值 ===是强比较,需要比较值和类型 0x02: 看下图案 ...