前言
之前学习异步asyncio
库的时候,因为asyncio
库支持Python3.5以上的版本,而我的Ubuntu14.04只有Python3.4,虽然下载了Python3.6,但是想直接利用ipython3或者pip3调用Python3.6相关的东西有点困难,可能是我手法不对,有点混乱。
之前只是简单的用过virtualenv
,直到发现了这个pipenv
,有点吊炸天。
Python开发者应该听过pip、easy_install和virtualenv,如果看过我的书应该还知道 virtualenvwrapper、virtualenv-burrito和autoenv,再加上pyvenv、venv(Python 3标准库)、pyenv…
额,是不是有种发懵的感觉?
那么现在有个好消息,你可以只使用终极方案: pipenv + autoenv(可选)。
pipenv 都包含什么?
pipenv 是 Pipfile 主要倡导者、requests 作者 Kenneth Reitz 写的一个命令行工具,主要包含了Pipfile、pip、click、requests和virtualenv。Pipfile和pipenv本来都是Kenneth Reitz的个人项目,后来贡献给了pypa组织。Pipfile是社区拟定的依赖管理文件,用于替代过于简陋的 requirements.txt 文件。
Pipfile的基本理念是:
Pipfile 文件是 TOML 格式而不是 requirements.txt 这样的纯文本。
一个项目对应一个 Pipfile,支持开发环境与正式环境区分。默认提供 default 和 development 区分。
提供版本锁支持,存为 Pipfile.lock。
click是Flask作者 Armin Ronacher 写的命令行库,现在Flask已经集成了它。
接下来,我们看看怎么使用它吧
安装
$ pip install pipenv
用法
在使用pipenv
之前,必须彻底的忘记pip
这个东西
新建一个准备当环境的文件夹pipenvtest,并cd进入该文件夹:pipenv --three
会使用当前系统的Python3创建环境
pipenv --python 3.6
指定某一Python版本创建环境
pipenv shell
激活虚拟环境
pipenv --where
显示目录信息/home/jiahuan/pipenvtest
pipenv --venv
显示虚拟环境信息/home/jiahuan/.local/share/virtualenvs/pipenvtest-9KKRH3OW
pipenv --py
显示Python解释器信息/home/jiahuan/.local/share/virtualenvs/pipenvtest-9KKRH3OW/bin/python
pipenv install requests
安装相关模块并加入到Pipfile
pipenv install django==1.11
安装固定版本模块并加入到Pipfile
pipenv graph
查看目前安装的库及其依赖
pipenv uninstall --all
卸载全部包并从Pipfile中移除
摘抄自: