1 pip的优点

  pip如今已经成为了Python的一大特色,可以很方便得协助Python开发者进行包管理。综合来说,匹配拥有如下优点:

  • pip提供了丰富的功能,其竞争对手easy_install只支持安装,没有提供写在和显示已安装列表的功能。

  • pip能够很好地支持虚拟环境。

  • pip可以通过requirements.txt集中管理依赖;

  • pip能够处理二进制格式(.whl);

  • pip是先下载后安装,如果安装失败,也会清理干净,不会留下一个中间状态。

2 pip常用命令

  pip提供的命令不多,但是都很实用。

  (1)pip查看版本与升级

  查看pip版本:pip -V

  升级pip :pip install --upgrade pip

  上面图片中,因为我的电脑中的pip已经是最新,所有并没有升级。

  (2)查看已安装第三方包列表:pip list

  (3)pip安装第三方包:pip install

  • 直接安装:pip install 包名

  这一命令会默认安装最新版本的包,如果想要安装指定版本的第三方包,可以通过以下命令指定版本。

  • 指定版本安装:pip install 包名==版本号

  • 通过.whl安装包安装:pip install .whl安装包名

  这种方式通常在直接pip安装出现异常时使用。.whl安装包需在安装前下载好,下面推荐一个常用的.whl包下载网址:https://www.lfd.uci.edu/~gohlke/pythonlibs/

  • 通过requirements.txt安装:pip install -r requirements.txt

  这种方式一般用于安装项目依赖。requirements.txt中,通过使用== >= <= > <来指定版本,不写则安装最新版。requirements.txt的内容格式如下:

  1. Twisted==18.9.0
  2.  
  3.   SQLAlchemy==1.2.18
  4.  
  5.   Django==1.5.4
  6.  
  7.   pandas==0.24.1
  8.  
  9.   lxml==4.3.1

  (4)升级包:pip install -U 包名

  (5)查看安装包详细信息:pip show 包名

  (6)卸载第三方包:pip uninstall 包名

3 pip使用国内pypi镜像

  pip命令默认使用的是国外的pypi镜像(pypi.python.org),安装慢不说,有时甚至会导致出现超时等网络问题,造成安装失败。所以,使用国内的pypi镜像,不失为一种加速pip安装第三方包的好方法。国内的第三方镜像源有很多,如下所示:

  阿里云镜像源http://mirrors.aliyun.com/pypi/simple/

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

  豆瓣镜像源: http://pypi.douban.com/simple/

  清华大学镜像源https://pypi.tuna.tsinghua.edu.cn/simple/

  中国科学技术大学镜像源http://pypi.mirrors.ustc.edu.cn/simple/

  如果要使用第三方镜像源,只需要在安装时,通过pip命令的-i选项指定镜像源即可,例如通过豆瓣源安装flask:

  pip install -i https://pypi.douban.com/simple/ flask==0.12

  如果每次安装时都想要通过豆瓣源来安装,上面的办法不免有些麻烦。我们可以修改pip的配置文件,将镜像源写入配置文件中。

  对于linux系统,需要先创建~/.pip/pip.conf文件,然后在文件中保存如下内容:

  1.   [global]
  2.  
  3.   index-url = http://pypi.douban.com/simple
  4.  
  5.   [install]
  6.  
  7.   trusted-host = pypi.douban.com

  对于windows系统,在C:\Users\文件夹下的用户目录(例如如果当前用户是Administrator则是C:\Users\Administrator)下创建pip文件夹,然后在pip文件夹先创建pip.ini文件,在文件中写入一下内容:

  1.   [global]
  2.  
  3.   index-url = http://pypi.douban.com/simple
  4.  
  5.   [install]
  6.  
  7.   trusted-host = pypi.douban.com

  测试一下:

4 总结

  本篇博文内容不多,但囊括了大部分的pip使用方法。pip功能强大,用法简单,的确是Python开发的好帮手。

Python开发之pip使用详解的更多相关文章

  1. [置顶] Android开发之MediaPlayerService服务详解(一)

    前面一节我们分析了Binder通信相关的两个重要类:ProcessState 和 IPCThreadState.ProcessState负责打开Binder 驱动,每个进程只有一个.而 IPCThre ...

  2. Android开发之EditText属性详解

    1.EditText输入的文字为密码形式的设置 (1)通过.xml里设置: 把该EditText设为:android:password="true" // 以”.”形式显示文本 ( ...

  3. 【转】 Android开发之EditText属性详解

    原文网址:http://blog.csdn.net/qq435757399/article/details/7947862 1.EditText输入的文字为密码形式的设置 (1)通过.xml里设置: ...

  4. NDK开发之JNIEnv参数详解

    即使我们Java层的函数没有参数,原生方法还是自带了两个参数,其中第一个参数就是JNIEnv. 如下: native方法: public native String stringFromC(); pu ...

  5. android开发之onCreate( )方法详解

    这里我们只关注一句话:This is where you should do all of your normal static set up.其中我们只关注normal static,normal: ...

  6. Android开发之MediaRecorder类详解

    MediaRecorder类介绍: MediaRecorder类是Android sdk提供的一个专门用于音视频录制,一般利用手机麦克风采集音频,摄像头采集图片信息. MediaRecorder主要函 ...

  7. NDK开发之ndk-build命令详解

    毫无疑问,通过执行ndk-build脚本启动android ndk构建系统. 默认情况下,ndk-build脚本在工程的主目录中执行,如: 我们可以用使用-C参数改变上述行为,-C指定工程的目录,这样 ...

  8. android开发之Parcelable使用详解

    想要在两个activity之间传递对象,那么这个对象必须序列化,android中序列化一个对象有两种方式,一种是实现Serializable接口,这个非常简单,只需要声明一下就可以了,不痛不痒.但是a ...

  9. android开发之PreferenceScreen使用详解

    是在惭愧,学习android也有一段时间了,今天才是第一次接触PreferenceScreen.记录下来,与大家分享. 本文参考:http://lovezhou.iteye.com/blog/1020 ...

随机推荐

  1. python安装模块方法汇总

    方法一: 原文地址: http://blog.csdn.net/cighao/article/details/47860041 在 windows 系统下,只需要输入命令 pip install re ...

  2. Attempting to badge the application icon but haven't received permission from the user to badge the application错误解决办法

    今天刚刚学习UIApplication对象,当我希望利用这个对象在我们的应用图标上显示个数字的时候,xcode报了这个错误:  解决办法 : - (IBAction)applicationClicke ...

  3. 2018-2019-2 网络对抗技术 20165230 Exp4 恶意代码分析

    目录 1.实验内容 2.实验过程 任务一:系统运行监控 每隔五分钟记录自己的电脑,并进行分析 安装配置sysinternals里的sysmon工具 任务二:恶意软件分析 静态分析工具 ViruScan ...

  4. Docker镜像命令

    ①docker images [Options] 用途:列出本地主机上的镜像 Options说明: -a:列出本地所有的镜像(含中间映像层) -q:只显示镜像ID --digests:显示镜像的摘要信 ...

  5. Majority Element(169) && Majority Element II(229)

    寻找多数元素这一问题主要运用了:Majority Vote Alogrithm(最大投票算法)1.Majority Element 1)description Given an array of si ...

  6. ARMV8 datasheet学习笔记4:AArch64系统级体系结构之编程模型(2)- 寄存器

    1. 前言 2. 指令运行与异常处理寄存器 ARM体系结构的寄存器分为两类: (1)系统控制和状态报告寄存器 (2)指令处理寄存器,如累加.异常处理 本部分将主要介绍如上第(2)部分的寄存器,分为AA ...

  7. Linux mmc framework2:基本组件之queue

    1.前言 本文主要介绍card下queue组件的主要流程,在介绍的过程中,将详细说明和queue相关的流程,涉及到其它组件的详细流程再在相关文章中说明. 2.主要数据结构和API 2.1 struct ...

  8. 用rand()和srand()产生伪随机数的方法总结 【转】

    转自:http://blog.chinaunix.net/uid-26722078-id-3754502.html 标准库(被包含于中)提供两个帮助生成伪随机数的函数: 函数一:int rand(vo ...

  9. 转:vue+canvas如何实现b站萌系登录界面

    https://juejin.im/post/5ae802a46fb9a07ac55fec04

  10. 在listView中的模糊查询和删除