pip("Pip Installs Packages")诞生于2008年 , 取代了早期的 easy_install , 成为 python 官方推荐的包管理工具 , 是python世界里一个不可或缺的工具。它能帮你轻松地安装、升级、卸载和管理python包。21年随着python 3.4的发布 , pip被官方集成到python安装包中 , 成为标准工具 , 不需额外下载安装。

通过pip安装的包 , 通常存放你python安装路径下 : python/Lib/site-packages中。也可以通过python代码 , 找出某一个包的安装位置 , 如下所示:

import site
print(site.getsitepackages())

基础使用命令如下

  • 查询软件包

    • 列出已安装的软件包

      pip list 
    • 查看pypi上含有某名字的包

      pip search pkg
    • 查询当前环境中可升级的包

      pip list --outdated
    • 查询一个包的详细内容

      pip show pkg
  • 下载软件包

    • 在不安装软件包的情况下下载软件包到本地

       pip download --destination-directory /local/wheels -r requirements.txt
    • 下载完,总归是要安装的,可以指定这个目录中安装软件包,而不从 pypi 上安装。

       pip install --no-index --find-links=/local/wheels -r requirements.txt
    • 你也从你下载的包中,自己构建生成 wheel 文件

       pip install wheel  
       pip wheel --wheel-dir=/local/wheels -r requirements.txt
  • 安装软件包

    • 升级pip

      pip install --upgrade pip
    • 升级指定包

      pip install --upgrade PackageName
    • 升级所有安装包:

      pip install --upgrade
    • 安装软件包

      python -m pip install SomePackage            
      python -m pip install SomePackage==1.0.4    
      python -m pip install 'SomePackage>=1.0.4'    
    • 安装项目依赖 : 如果项目文件中存在requirements.txt 文件 , 以下命令将安装所有依赖 :

      pip install -r requirements.txt

      生成requirements.txt 文件 :

      pip freeze > requirements.txt
    • 指定软件仓库镜像地址安装包:

      pip install --index-url http://my.package.repo/simple/ PackageName
    • 只从本地安装, 而不从pypi安装

      # 前提你得保证你已经下载 pkg 包到 /local/wheels 目录下
      $ pip install --no-index --find-links=/local/wheels pkg
    • 用户安装 : 将包安装到用户特定的目录, 实现与全局包的隔离:

      python -m pip install --user SomePackage
  • 卸载软件包:

    # 卸载指定软件包
    python -m pip uninstall simplejson  
    ​
    # 卸载 requirements.txt 文件中列出的软件包
    python -m pip uninstall -r requirements.txt 
  • 常用功能:

    # 列出所有已安装软件包 
    python -m pip list    
    ​
    # 显示关于已安装软件包的信息
    python -m pip show sphinx
    ​
    ​
    # 生成需求文件
    python -m pip freeze > requirements.txt  
    ​
    # 根据需求(及其所有依赖项)构建 Python 包 , 然后安装
    python -m pip wheel --wheel-dir=/tmp/wheelhouse SomePackage
    python -m pip install --no-index --find-links=/tmp/wheelhouse SomePackage
  • 配置 : 配置默认 PyPI 镜像地址 , 解决可能存在的网络问题:

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

    这里的地址可以在清华源的pip源中搜索

    可以以下命令查看对应配置文件的具体位置

    pip -v config list

    当你身处在一个内网环境中时,无法直接连接公网。这时候你使用pip install 安装包,就会失败。

    $ pip install --proxy [user:passwd@]http_server_ip:port pkg

    每次安装包就发输入长长的参数,未免有些麻烦,为此你可以将其写入配置文件中 : $HOME/.config/pip/pip.conf

    不同的操作系统,路径各不相同

    # Linux/Unix:
    /etc/pip.conf
    ~/.pip/pip.conf
    ~/.config/pip/pip.conf
    ​
    # Mac OSX:
    ~/Library/Application Support/pip/pip.conf
    ~/.pip/pip.conf
    /Library/Application Support/pip/pip.conf
    ​
    # Windows:
    %APPDATA%\pip\pip.ini
    %HOME%\pip\pip.ini
    C:\Documents and Settings\All Users\Application Data\PyPA\pip\pip.conf (Windows XP)
    C:\ProgramData\PyPA\pip\pip.conf (Windows 7及以后) 

    若在你的机子上没有此文件,则自行创建即可

    如何配置,这边给个样例:

    ​
    [global]
    index-url = http://mirrors.aliyun.com/pypi/simple/ 
    ​
    # 替换出自己的代理地址,格式为[user:passwd@]proxy.server:port
    proxy=http://xxx.xxx.xxx.xxx:8080 
    ​
    [install]
    # 信任阿里云的镜像源,否则会有警告
    trusted-host=mirrors.aliyun.com


参考链接

PIP : Python 包管理工具详解

Python 包管理器 pip 完全指南

《pip秘籍 : Python包管理的10个高效秘招》

最全的 pip 使用指南,50% 你可能没用过。


熊熊