最近学习flask,由于flask框架本身非常极简,功能上需要很多的扩展包,所以项目需要在Python的虚拟环境下来安装管理这些扩展,这样才会方便项目在其他地方进行扩展包的安装。这里推荐pipenv
来管理虚拟环境和扩展。
## 安装并激活虚拟环境
pip install pipenv
终端进入项目目录,pipenv shell
激活并初始化虚拟环境,
(base) ( ̄︶ ̄)↗ pipenv shell
Launching subshell in virtual environment...
bash-3.2$ . /Users/mac/.local/share/virtualenvs/Flask-BabyLog-cH2fMiTs/bin/activate
(Flask-BabyLog) bash-3.2$
我们可以看到环境配置文件的目录,以及终端的提示符的变化。
使用exit
退出虚拟环境。
把平时的pip
换成pipenv
pipenv install requests
打开项目目录中的Pipfile
[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"
[packages]
requests = "*"
[dev-packages]
[requires]
python_version = "3.8"
url
那里可以修改pip的镜像地址,如果下载太慢,可以换成国内的镜像地址。
[packages]
是虚拟环境中安装过的扩展包
假设换了一台机器,我们从GitHub上clone下来项目,当然项目中的包含Pipfile
Pipfile.lock
二个文件。
终端运行:
pipenv install
即可安装项目的所有依赖。
以上为pipenv
的一些简单操作,更多请参考官方文档。
如果讨厌lock
的生成速度,可以在安装依赖的时候使用pip
,然后生成依赖列表:
pip freeze > requirements.txt
这样在其他地方创建虚拟环境开荒的时候,可以使用下边的命令安装所有依赖。
pip install -r requirements.txt
虽然这用法有点另类,我只是喜欢pipenv
的创建、启用和退出的命令,很方便。哈哈哈,实在不行咱就用回venv
吧,可以参考下文