*ubuntu系统下python虚拟环境相关设置
python虚拟环境主要目的是为了给不同的工程创建互相独立的运行环境。在虚拟环境下,每一个工程都有自己的依赖包,而与其它的工程无关。不同的虚拟环境中同一个包可以有不同的版本,并且,虚拟环境的数量没有限制。
virtualenv 是一个创建python开发环境的工具。
1.安装
pip install virtualenv
2. 为一个工程创建特定的虚拟环境
cd my_project_dir #进入工程目录
virtualenv -p /usr/bin/python2.7 venv #-p指定特定版本python解释器的路径,venv为虚拟环境名(也可以设置成隐藏文件夹如.venv)。该命令会在当前目录下创建一个名为venv的文件夹,包含了指定版本的python解释器,及pip,setuptools和wheel等的一个拷贝,这样就能安装其它包了。生成文件夹包含如下目录结构:
3. 使用虚拟环境
source venv/bin/activate #在my_project_dir目录下运行,激活该虚拟环境,从现在起你使用pip安装的包将会被放在venv文件夹中,实现与全局安装的python及其他虚拟环境隔绝。
该命令运行后,shell命令行提示符会出现虚拟环境的名字。
4.退出虚拟环境
deactivate #在工作结束后,该命令可以退出虚拟环境。
5.删除虚拟环境,只需删除对应的文件夹即可。
virtualenv使用与特定文件夹相关,不利于对虚拟环境集中管理,可能一段时间后,会出现多个虚拟环境散落在系统各处,你可能忘记他们的名字或者位置。
推荐配合使用virtualenvwrapper。
该工具提供了一系列命令使得虚拟环境工作变得便利,它将所有的虚拟环境放在一个地方,实现集中管理。
1. 安装virtualenvwrapper(确保virtualenv已安装)
pip install virtualenvwrapper
2.配置环境变量,在~/.bashrc末尾写入以下内容
export WORKON_HOME=~/.virtualenvs #指定存放虚拟环境的目录为~/.virtualenvs文件夹
source /usr/local/bin/virtualenvwrapper.sh #运行virtualenvwrapper脚本
3. 创建虚拟环境
mkvirtualenv --python=/usr/local/python3.5/bin venv #这样会在WORKON_HOME变量指定的目录下新建名为venv的虚拟环境,对应的python解释器版本由 --python参数指定
4. 查看当前虚拟环境目录
workon
5. 切换到某个虚拟环境
workon venv #venv为对应的虚拟环境名
6 . 退出虚拟环境
deactivate
7.删除虚拟环境
rmvirtualenv venv
vscode设置python虚拟环境
vscode是我比较喜欢的编辑器,有两种方式可以设置python虚拟环境
1. 打开command palette,或采用ctrl+shift+p,输入python select interpreter,选择python解释器版本,通常情况下设置好虚拟环境后vscode会自动找到可供选择的python解释器版本,选择你想要的就好了。选中后当前目录的.vscode文件夹下会出现设置文件,里头显示python路径如: "python.pythonPath": "/home/cky/.virtualenvs/py3.7/bin/python"则设置成功。
2.如果vscode没有自动识别到虚拟环境,则打开设置,在settings.json文件中修改python虚拟环境识别规则,增加如下条目:
“python.venvFolders”:[
"envs",
".virtualenvs" #这些为常用虚拟环境文件夹命名形式,增加你的虚拟环境文件夹名
]
重启之后vscode就会找到相应环境下的python解释器了。
2.打开设置,在查找栏输入python path找到Python Path选项,把对应虚拟环境下的python解释器地址输进去就好了