python 虚拟环境
主要作用
- 项目隔离
不同等项目需要不同的版本: 如项目A 需Xxx 2.1 , 项目B 需要Xxx3.1
- 整个虚拟环境只能安装一个版本,但是虚拟环境可以各安装各的
- 依赖管理
个版本切换使用时互不干扰
- 环境的一致性(与docker类似)
确保开发环境、测试环境与生产环境都使用相同版本的包
- 权限管理
不需要sudo 权限就可以安装包
- 快速清理
删除虚拟环境目录即可以完全清理干净
python虚拟环境创建
bash
# 创建项目目录
mkdir xx-project
cd xx-project
# 创建虚拟环境
python3 -m venv venv
# 激活虚拟环境
source venv/bin/activate # 在xx-project项目路径下
虚拟环境与项目代码的关系
- 在各自项目下创建虚拟目录,创建虚拟环境

虚拟python环境的使用
- 可以使用完整路径执行
bash
# 不一定!你可以:
# 1. 使用完整路径执行
./venv/bin/python script.py
# 2. 在脚本开头指定解释器
#!/path/to/venv/bin/python
# 3. IDE通常会自动处理虚拟环境
如:在项目路径下使用虚拟环境python3的绝对路径运行

多虚拟环境的管理
bash
# 使用工具管理多个环境(推荐)
pip install virtualenvwrapper
# 配置
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
# 使用
mkvirtualenv env1 # 创建
workon env1 # 切换
deactivate # 退出
rmvirtualenv env1 # 删除
python虚拟环境与系统环境的对比
python3 的可执行文件路径不同

支持的Python模块也不同
不同python虚拟环境中支持的模块不同

