Flask 学习笔记
一、虚拟环境
1.1、为什么需要虚拟环境
到目前位置,我们所有的第三方包安装都是直接通过 pip install xx
的方式进行安装的,这样安装会将那个包安装到你的系统级的 Python 环境中。
但是这样有一个问题,就是如果你现在用 Django 1.10.x 写了个网站,然后之前有一个旧项目是用 Django 0.9 开发的,让你来维护,但是 Django 1.10 不再兼容 Django 0.9 的一些语法了。
这时候就会碰到一个问题,我如何在我的电脑中同时拥有 Django 1.10 和 Django 0.9 两套环境呢?这时候我们就可以通过虚拟环境来解决这个问题。
1.2、配置虚拟环境(pipenv)
- Windows 安装 pipenv
pip install pipenv
- Mac 安装
brew install pipenv
- Linux 安装
pip install pipenv
1.3、pipfile 和 pipfile.lock
- Pipfile 文件
url # 指定国内pip源,不然下载库会很慢
dev-packages # 开发环境
packages # 生产环境
django = "*" # *表示最新版本
requires # Python版本
- pipfile.lock:详细记录环境依赖,并且利用了Hash算法保证了它完整对应关系。
1.4、配置存放虚拟环境的地址
1.5、进入 / 退出 / 删除 虚拟环境
pipenv shell # 创建并进入虚拟环境
exit # 退出虚拟环境
pipenv --rm # 删除整个环境 不会删除pipfile
1.6、管理开发环境
- 安装在开发环境下
pipenv install --dev itchat
- 在虚拟环境中运行命令,使用run参数
pipenv run python manage.py runserver
- pipenv 有个缺点,lock 不稳定而且时间非常长,所以安装包的时候记得加上
--skip-lock
,最后开发完成要提价到仓库的时候再pipenv lock
pipenv install django --skip-lock