Python 3 学习笔记

人生苦短,我用 Python。

👉 所有文章
工具使用 Mac 安装与卸载 Python Python 3 : 包管理器 pip 的使用 Python 3 : virtualenv 的使用 Python 3: IPython 的安装与使用 Python 包的位置
开发相关 Python 3 : 数字 Python 3 : 数字的进制转换 Python 3 : 集合 set Python 3 : 路径处理 Python 3 : sys.path Python 3 : 模块 Python 3 : 使用 SimpleHttpServer 快速构建静态文件服务 Python 3 : CRC32 Python 3 : json 处理 Python 3 : yaml 处理 Python 3 : 使用 getopt 解析命令行参数 Python 3 : 使用 argparse 库解析命令行参数 Python 3 : Jinja2 模板引擎 Python 3 : 使用 pprint 打印出美观的复杂数据 Python 3 : 类型提示
其他 如何将requests变成一个异步HTTP库 理解Python中的map、reduce和filter Numpy入门 关于python实例方法、静态方法、类方法、类变量和实例变量 使用python转换文件编码 观察者模式(Python实现) 改善Python自带的HTTP服务器SimpleHTTPServer 使用python实现单例模式 理解Python WSGI SQLObject和SQLAlchemy入门 Tornado解决跨站请求伪造XSRF 使用sorted函数对python中的迭代对象进行排序 使用Python快速安全地操作sqlite3 理解python中的列表推导 代理模式(Python实现)

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

( 本文完 )

文章目录