pip 食用手册

[TOC]

pip是一个以Python计算机程序语言写成的软件包管理系统,他可以安装和管理软件包,另外不少的软件包也可以在“Python软件包索引”中找到。
维基百科

pip 的下载、安装、更新

快2020年了,正常下载 Python 后,pip 都是安装好了的。

不过一般下的 Python 安装包里 pip 都不是最新版本,使用以下命令更新 pip:

python -m pip install --upgrade pip
# 以下是 2019-12-18 的运行结果
Collecting pip
  Downloading https://files.pythonhosted.org/packages/00/b6/9cfa56b4081ad13874b0c6f96af8ce16cfbc1cb06bedf8e9164ce5551ec1/pip-19.3.1-py2.py3-none-any.whl (1.4MB)
     |████████████████████████████████| 1.4MB 726kB/s
Installing collected packages: pip
  Found existing installation: pip 19.1.1
    Uninstalling pip-19.1.1:
      Successfully uninstalled pip-19.1.1
Successfully installed pip-19.3.1

如果您到 pip 默认源的网络连接较差,临时使用镜像站来升级 pip:

# 清华大学源
python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip

更换更新源

升级 pip 到最新的版本 (>=10.0.0) 后进行配置:

# 清华大学源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

临时使用

注意,simple 不能少, 是 https 而不是 http

# 清华大学源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

安装包

pip install 安装包名

列出已安装的包

pip list

卸载包

pip uninstall 要卸载的包名

更新包

查看更新

pip list --outdated

批量更新

根据 How to upgrade all Python packages with pip? 整理而成。

1.亲测可行

pip list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1  | xargs -n1 pip install -U

2.未测试

import pkg_resources
from subprocess import call

packages = [dist.project_name for dist in pkg_resources.working_set]
call("pip install --upgrade " + ' '.join(packages), shell=True)

3.未测试

pip install pip-review
pip-review --local --interactive

单个更新

pip install --upgrade 要升级的包名

参数

# pip --help
 
Usage:  
 pip<command>[options]
 
Commands:
 install                    安装包.
 uninstall                  卸载包.
 freeze                     按着一定格式输出已安装包列表
 list                       列出已安装包.
 show                       显示包详细信息.
 search                     搜索包,类似yum里的search.
 wheel                      Buildwheelsfromyourrequirements.
 zip                        不推荐.Zipindividualpackages.
 unzip                      不推荐.Unzipindividualpackages.
 bundle                     不推荐.Createpybundles.
 help                       当前帮助.
 
GeneralOptions:
 -h,--help                 显示帮助.
 -v,--verbose              更多的输出,最多可以使用3次
 -V,--version              现实版本信息然后退出.
 -q,--quiet                最少的输出.
 --log-file<path>          覆盖的方式记录verbose错误日志,默认文件:/root/.pip/pip.log
 --log<path>               不覆盖记录verbose输出的日志.
 --proxy<proxy>            Specifyaproxyintheform[user:passwd@]proxy.server:port.
 --timeout<sec>            连接超时时间(默认15秒).
 --exists-action<action>   Defaultactionwhenapathalreadyexists:(s)witch,(i)gnore,(w)ipe,(b)ackup.
 --cert<path>              证书.
文章目录