如果在一台机器上,想开发多个不同的项目,需要用到同一个包的不同版本,如果还在本地继续安装,在同一个目录下安装或者更新,其它的项目必须就无法运行了,怎么办呢?
解决方案:虚拟环境
虚拟环境可以搭建独立的python运行环境,使得单个项目的运行环境与其它项目互不影响
所有的虚拟环境,都位于/home/下的隐藏目录.virtualenvs下
准备:
要先安装pip 安装工具
安装虚拟环境virtualenv:
pip install virtualenv
创建虚拟环境 :
virtualenv [虚拟环境名] 例如:创建一个叫 python_test的虚拟环境: virtualenv python_test
预设在简历虚拟环境时候,会依赖系统环境中的site packages, 如果想完全不依赖系统的packages,可以加上参数--no-site-packages
virtualenv --no-site-packages [虚拟环境名]
虚拟环境管理工具 Virtualenvwrapper:
Virtualenvwrapper 是一個 Virtualenv 的 extension,可使虚拟环境的管理变得更容易
相信来说,virtualenvwrapper 提供下述功能:
1. 将所有的虚拟环境整合在一个目录下
2. 管理(新增、移除、复制)所有的虚拟环境
3. 可以使用一个命令切换虚拟环境
4. Tab补全虚拟环境的名字
5. 每个草走哦都提供允许使用者自定的hooks
6. 可撰写容易分享的extension plugin系统
安装套件:
pip install virtualenvwrapper
使用virtualenvwrapper:
创建虚拟环境:
mkvirtualenv [名称]
查看已经安装虚拟环境的列表:
workon 或者: lsvirtualenv [-b] [-l] [-h] -b 是简短模式; -l 是详细模式(预设); -h 是help信息
启动虚拟环境:
workon [虚拟环境名称]
退出虚拟环境:
deactivate
移除虚拟环境:
rmvirtualenv [名称]
复制虚拟环境:
cpvirtualenv [旧环境] [新环境名称]
virtualenvwapper还有更多功能,详细请参照:virtualenvwapper官网