Python的虚拟环境工具有很多很多,这里只是总结我自己常用的两种。
venv
venv模块提供了一个创建轻量型“虚拟环境”的途径,Python3.5后被官方推荐使用
(补充一点,virtualenv,这一个工具也能安装虚拟环境,但需要另外下载,支持 Python 2.7+ and Python 3.3+)
python3一般是内置了venv模块,如果没有,ubuntu环境下,可以使用apt install python3-venv安装
之后,在虚拟环境文件夹下会创建bin子文件夹(Windows下为Scripts)放置Python的二进制文件的副本或快捷方式。另有lib/pythonX.Y/site-packages 子文件夹 ( Windows下为 Lib\site-packages)
创建虚拟环境
python3 -m venv /path/to /new/virtual/environment
一般我会习惯直接在项目根目录下直接创建venv文件夹,如python3 -m venv venv
激活环境
在虚拟环境被创建之后,我们需要“激活”操作,才算是真正地进入到虚拟环境
不同平台及环境下,激活命令有所区别
bash/zsh:
$ source <venv>/bin/activate
fish:
$ . <venv>/bin/activate.fish
csh/tchs:
$ source <venv>/bin/activate.csh
cmd.exe:
C:\> <venv>\Scripts\activate.bat
Powershell:
PS C:\> <venv>\Scripts\Activate.ps1
激活后,当前命令行会有(venv)标志(venv为先前自定义的文件夹名),表示成功进入虚拟环境,这时我们就可以使用pip/pip3安装依赖了
补充:一般在使用虚拟环境时,我们会配合使用requirement.txt文件来记录项目使用的依赖包和版本号
requirement.txt生成方法
pip freeze > requirements.txt
安装requirement.txt内依赖
pip install -r requirement.txt
pipenv
pipenv是一个第三方的虚拟环境工具,能自动创建及管理虚拟环境,例如当你安装/卸载依赖包的时候,它能自动记录并修改Pipfile文件,而pipfile.lock则记录了固定版本的详细依赖包列表。同时,还能够自动加载.env文件。
安装pipenv
pip install pipenv
安装依赖
pipenv install
无参数时,所有依赖包都会安装。--dev参数则用来包括开发依赖
激活环境
pipenv shell
命令直接激活,进入环境,无虚拟环境则会自动创建
--three/--two
参数则会在创建虚拟环境时选择python3/2环境,保证依赖包环境;--python 3.7
这种形式则更加具体
网友评论