Python 3 学习笔记

人生苦短,我用 Python。

👉文章列表
Python 3 学习笔记 ⏬ 数字 数字的进制转换 路径处理 sys.path 模块 使用 SimpleHttpServer 快速构建静态文件服务 包管理器 pip 的使用 virtualenv 的使用 CRC32 BeautifulSoup 使用指南 使用 BeautifulSoup 去除 HTML 中的注释 PyMySQL 使用指南 json 处理 yaml 处理 使用 getopt 库解析命令行参数 使用 argparse 库解析命令行参数 Jinja2 模板引擎

Python 3: 包管理器 pip 的使用


目录:


安装pip

如果版本号大于等于 2.7.9 Python 2 ,或者版本号大于等于 3.4 的 Python 3,官方安装包自带 pip 。

如果没有,可以按照下面的方法安装:

$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
$ python3 get-pip.py

Python 2 的安装:

$ python get-pip.py

目前Linux、macOS等操作系统中会默认安装 Python 2,为了区分,Python 3 中的 pip 的名字一般是 pip3,以和 Python 2 的 pip 区分。如果不是,也建议手动 alias 为 pip3。

使用示例

查看 pip 版本

$ pip3 --version
$ pip3 search package_name

查找示例:

$ pip3 search mysql
mysql (0.0.2)                                                   - Virtual package for MySQL-python
weibo-mysql (0.1)                                               - insert mysql
bits-mysql (1.0.3)                                              - BITS MySQL
...... 省略部分内容

使用 install 安装第三方库

安装到默认的第三方库目录:

$ pip3 install package_name

如何在 Linux、macOS 系统上提示权限,可以在前面加上 sudo

安装到用户目录:

$ pip3 install package_name --user

安装示例:

$ pip3 install pycurl --user
Collecting pycurl
  Downloading https://files.pythonhosted.org/packages/ac/b3/0f3979633b7890bab6098d84c84467030b807a1e2b31f5d30103af5a71ca/pycurl-7.43.0.3.tar.gz (215kB)
     |████████████████████████████████| 215kB 10kB/s
Building wheels for collected packages: pycurl
  Building wheel for pycurl (setup.py) ... done
  ......

列出当前安装的所有第三方库

$ pip3 list
Package          Version
---------------- ---------
appnope          0.1.0
asn1crypto       0.24.0
backcall         0.1.0
// 省略部分输出...

list 还有很多用法,可以通过pip3 list -h查看帮助。

常见的用法:

  • 查看不是最新版本的库:pip3 list --outdated
  • 查看用户级的库:pip3 list --user

另外,也可以通过pip3 freeze查看的安装的库,它会以 requirements 格式输出:

$ pip3 freeze
appnope==0.1.0
asn1crypto==0.24.0
// 省略部分输出...

升级 pip

$ pip3 install --upgrade pip

查看某个已安装库的信息

$ pip3 show Jinja2

示例:

$ pip3 show Jinja2
Name: Jinja2
Version: 2.10
Summary: A small but fast and easy to use stand-alone template engine written in pure python.
Home-page: http://jinja.pocoo.org/
Author: Armin Ronacher
Author-email: armin.ronacher@active-4.com
License: BSD
Location: /Users/letian/Library/Python/3.6/lib/python/site-packages
Requires: MarkupSafe
Required-by: Flask

查询某个第三方库有哪些版本

进入 https://pypi.org/ 查询。

安装指定版本的第三方库

如果已经有,先卸载,以pycurl为例子:

$ pip3 show pycurl
Name: pycurl
Version: 7.43.0

$ pip3 uninstall pycurl
Uninstalling pycurl-7.43.0:

$ pip3 install pycurl==7.21.5

更新 pip 本身

$ pip3 install --upgrade pip

解决 ImportError: module 'pip' has no attribute 'main'

在一次升级 pip 失败后,再执行 pip 时候,报错:

...
ImportError: module 'pip' has no attribute 'main'

解决办法是重新安装pip:

  1. https://bootstrap.pypa.io/get-pip.py 下载到本地。
  2. 执行 python get-pip.py 。如果是 python3,则执行 python3 get-pip.py

( 本文完 )

目录