认识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 个使用小技巧的更多相关文章

  1. 必知的 15 个jQuery小技巧(干货)

    jQuery小技巧(干活) 1.返回顶部按钮 你可以利用 animate 和 scrollTop 来实现返回顶部的动画,而不需要使用其他插件. $('a.top').click(function(){ ...

  2. 前端程序员应该知道的15个 jQuery 小技巧

    下面这些简单的小技巧能够帮助你玩转jQuery. 返回顶部按钮 预加载图像 检查图像是否加载 自动修复破坏的图像 悬停切换类 禁用输入字段 停止加载链接 切换淡入/幻灯片 简单的手风琴 让两个div高 ...

  3. 前端程序员应该知道的 15 个 jQuery 小技巧

    下面这些简单的小技巧能够帮助你玩转jQuery. 返回顶部按钮 预加载图像 检查图像是否加载 自动修复破坏的图像 悬停切换类 禁用输入字段 停止加载链接 切换淡入/幻灯片 简单的手风琴 让两个div高 ...

  4. 15个jQuery小技巧

    1.返回顶部按钮通过使用jQuery中的animate 和scrollTop 方法,不用插件就可以创建一个滚动到顶部的简单动画:// Back to top $('.top').click(funct ...

  5. 15.6.8-sql小技巧

    取月头月尾: declare @someDay datetime,@firstDay datetime,@endDay datetime set @someDay='2015.2.2' ,) ,) s ...

  6. 聊聊sql优化的15个小技巧

    前言 sql优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到. 如果某天你负责的某个线上接口,出现了性能问题,需要做优化.那么你首先想到的很有可能是优化sql语句,因为它 ...

  7. 15个你不得不知道的Chrome dev tools的小技巧

    转载自:https://www.imooc.com/article/2559 谷歌浏览器如今是Web开发者们所使用的最流行的网页浏览器.伴随每六个星期一次的发布周期和不断扩大的强大的开发功能,Chro ...

  8. 关于Python ,requests的小技巧

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/xie_0723/article/details/52790786 关于 Python Request ...

  9. Python Requests 小技巧总结

    关于 Python Requests ,在使用中,总结了一些小技巧把,分享下. 1:保持请求之间的Cookies,我们可以这样做. import requests self.session = req ...

随机推荐

  1. split截取字符串

    一.根据单个分隔字符用split截取字符串:string st="GT123_1";split代码:string[] sArray=st.split("_"); ...

  2. 通过AI识图判断图片是否为小票

    先在百度智能云中创建一个应用加入以下标记功能(没有智能云账号可以去创建一个,创建应用也都是些基本操作) 本次只用到标记的功能. 此功能在图像识别下面. 创建应用后,页面会出现平台分配的密钥:API K ...

  3. Unity接入ShareSDK实现QQ登录和QQ分享、微信分享

    原文链接:Unity接入ShareSDK实现QQ登录和QQ分享.微信分享 由于微信登录需要企业审核,我这里就不说明了,有需要的可以去官网看一下文档,和QQ登录比多了一个打包的步骤. 第一步:到官网申请 ...

  4. .Net Core:限流

    一.环境 1.vs2019 2..Net Core 3.1 3.引用 AspNetCoreRateLimit 4.0.1 二.基础使用 1.设置 在Startup文件中配置如下,把配置项都放在前面: ...

  5. 深入浅出,新一代跨平台抓包&调式利器Fiddler Everywhere

    什么是Fiddler Everywhere? Fiddler Everywhere is a web debugging proxy for macOS, Windows, and Linux. Ca ...

  6. 8、ITSM基本概念(2)

    6.流程和职能: 7.故障管理: (1)故障管理的输入和输出: (2)故障管理的目标: 优先解决影响度大的事件: (3)故障管理的指标: (4)故障管理的流程: 8.问题管理: (1)问题管理的输入和 ...

  7. JS中的单例模式及单例模式原型类的实现

    单例模式 单例模式的定义: 保证一个类只有一个实例,并提供一个访问它的全局访问点 通过一个简单的例子来了解单例模式的作用: class Div { constructor() { return doc ...

  8. Springboot:Springboot+mysql5.7搭建服务,超过8小时连接mysql失败

    报错信息 2017-03-12 03:00:02.539 ERROR 9311 --- [nio-9000-exec-4] o.a.c.c.C.[.[.[/].[dispatcherServlet] ...

  9. Hibernate框架(四)缓存策略+lazy

    Hibernate作为和数据库数据打交道的框架,自然会设计到操作数据的效率问题,而对于一些频繁操作的数据,缓存策略就是提高其性能一种重要手段,而Hibernate框架是支持缓存的,而且支持一级和二级两 ...

  10. bugku Crypto 下半部分wp

    1. 百度托马斯这个人居然还发明了一种轮转的加密法,发现原理是,他将很多行乱序的26个字母,插到一根柱子上,参考糖葫芦的样子,可以旋转每一行,设置自己要发送的明文后,向对方发送乱码的一列,对方只要将这 ...