在Ubuntu、Mac中创建虚拟环境的步骤
创建虚拟环境
问题:
在开发过程中,使用Python安装包时,需要使用可以使用pip install 包名或者sudo pip install 包名来安装。
问题是在开发多个项目的时候,使用的依赖包是不一样的或者依赖包的版本是不一样的。这时候如果还把所有的包放到一个开发环境中,就会造成开发环境的臃肿、混乱(包的版本不一样),更甚者会是环境无法运行。
解决这个问题的方法有一个:
使用virtualenv来创建虚拟环境,虚拟环境其实就是对真实pyhton环境的复制,这样我们在复制的python环境中安装包就不会影响到真实的python环境。通过建立多个虚拟环境,在不同的虚拟环境中开发项目就实现了项目之间的隔离。
1. 安装virtualenv
- 安装创建虚拟环境的工具包
sudo pip install virtualenv
- 切换到你想要创建虚拟环境的目录,
cd 你想要创建环境的目录
- 创建盛放虚拟环境的文件夹,例如workspace
mkidr workspace
- 进入到盛放环境的文件夹中
cd workspace
例如:
在home目录下创建一个workspace目录
sudo mkdir ~/workspace
切换到刚创建的workspace目录中
cd ~/workspace
那么以后你创建虚拟环境都会以文件夹的格式存放在workspace中 - 安装了virtualenv 之后就可以创建虚拟环境了,命令如下:
virtualenv env1 # 创建一个名为env1的虚拟环境
2. 安装 virtualenvwrapper
接下来安装virtualenvwrapper
,virtualenvwrapper
是virtualenv
的扩展包,可以更方便的新增、删除、复制、切换虚拟环境。
首先我们先来安装这个扩展包,安装方式如下:
pip install virtualenvwrapper 或者 sudo easy_install virtualenvwrapper
3. 配置环境变量
安装完virtualenvwrapper
,需要使用virtualenvwrapper.sh
配置一下环境变量
在Ubuntu系统中的配置文件是~/.bashrc
Mac系统的配置文件是~/.bash_profile
下面以Mac系统为例,直接把下面第2步和第3步写入配置文件中即可:
(1) 使用vim打开配置文件
vi ~/.bash_profile` 或者 `vi ~/.bashrc
(2) 这个目录为创建虚拟环境是所在的目录,可以自己指定目录
export WORKON_HOME='~/workspace'
(3) 添加virtualenvwrapper的执行文件
source usr/local/bin/virtualenvwrapper.sh
(4) 在配置完环境变量后,执行一下如下命令时刚才的配置生效
source ~/.bash_profile
4. 创建、使用虚拟环境
(1) 创建虚拟环境
mkvirtualenv -p python2 或者 python3 环境名
说明
-p python2 或者 python3 是用来指定虚拟环境解释器版本的。其实不用输入-p python2,因为默认使用python2进行创建
(2) 使用虚拟环境
使用虚拟环境的命令如下:写出名称的前部分后,可以使tab键补齐。注意提示符的变化
workon 虚拟环境名称
(3) 退出虚拟环境
deactivate
(4) 查看所有的虚拟环境
lsvirtualenv -b
(5) 删除虚拟环境
rmvirtualenv 环境名字
注意
一定要先退出虚拟环境,在进行删除
完整的演示代码:
例:(spider_py3) shuaigedeMacBook-Pro:~ python$# 先退出:(spider_py3) shuaigedeMacBook-Pro:~ python$ deactivate # 再删除:shuaigedeMacBook-Pro:~ python$ rmvirtualenv spider_py3
注意
1.创建成功后会自动使用这个虚拟环境,提示符前面会出现"(虚拟环境名称)" 例如:(spider_py3) MacBook-Pro:~ python$
2.创建虚拟环境需要联网
3.使用学校发的Ubuntu镜像,所有的虚拟环境,都位于/home/python/下的隐藏目录.virtualenvs下。
5. pip工具的使用
在虚拟环境中我们也使用pip进行安装python的工具包,安装命令如下:
pip install 包名称注意:在虚拟环境中 可使 sudo pip install 包名称 来安装python包,这样安装的 包实际是安装在 真实的主机环境上。
查看已经安装的python包的命令如下:
pip listpip freeze #这两个命令都可已查看当前 作的虚拟环境中安装 哪些python包,只是显示的格式稍有 同。
文本转载自个人博客-欢迎访问留言
学IT上博学谷