python虚拟环境的作用_python虚拟环境virtualenv和virtualenvwrapper

1.virtualenv

virtualenv作用:在一个操作系统下使用不同的python环境,包括不同的python版本和不同的python库包

安装pip

[root@sht-sgmhadoopcm-01 software]# wgethttps://bootstrap.pypa.io/get-pip.py--no-check-certificate

[root@sht-sgmhadoopcm-01 software]# python get-pip.py

安装virtualenv

[root@sht-sgmhadoopcm-01 software]# pip install virtualenv

创建虚拟环境test1_env

默认新建的虚拟环境包括pip、easy_install等工具

[root@sht-sgmhadoopcm-01 software]# virtualenv test1_env

New python executable in /opt/software/test1_env/bin/python

Installing setuptools, pip, wheel...

done.

会生成响应的目录和文件

[root@sht-sgmhadoopcm-01 software]# ls -lh test1_env/

total 0

drwxr-xr-x 2 root root 268 Feb 12 17:30 bin

drwxr-xr-x 3 root root  23 Feb 12 17:30 include

drwxr-xr-x 3 root root  23 Feb 12 17:30 lib

lrwxrwxrwx 1 root root   3 Feb 12 17:30 lib64 -> lib

启用虚拟环境

这个环境下执行python相关的操作都是限定在虚拟环境中

[root@sht-sgmhadoopcm-01 software]# source test1_env/bin/activate

(test1_env) [root@sht-sgmhadoopcm-01 software]#

查看当前虚拟环境的python目录是否正确

>>> import sys

>>> print sys.path

['', '/opt/software/test1_env/lib64/python27.zip', '/opt/software/test1_env/lib64/python2.7', '/opt/software/test1_env/lib64/python2.7/plat-linux2', '/opt/software/test1_env/lib64/python2.7/lib-tk', '/opt/software/test1_env/lib64/python2.7/lib-old', '/opt/software/test1_env/lib64/python2.7/lib-dynload', '/usr/lib64/python2.7', '/usr/lib/python2.7', '/opt/software/test1_env/lib/python2.7/site-packages']

退出虚拟环境

(test1_env) [root@sht-sgmhadoopcm-01 bin]# deactivate

测试1:在系统环境中安装第三方库,虚拟环境没有影响

[root@sht-sgmhadoopcm-01 software]# pip install jinja2

[root@sht-sgmhadoopcm-01 software]# pip list|grep Jinja2

Jinja2

[root@sht-sgmhadoopcm-01 software]# source test1_env/bin/activate

(test1_env) [root@sht-sgmhadoopcm-01 software]# pip list|grep jinja2|wc -l

0

测试2:在虚拟环境中安装第三方库,系统环境没有影响

[root@sht-sgmhadoopcm-01 software]# source test1_env/bin/activate

(test1_env) [root@sht-sgmhadoopcm-01 software]# pip install futures

(test1_env) [root@sht-sgmhadoopcm-01 software]# pip list|grep futures

futures    3.2.0

[root@sht-sgmhadoopcm-01 software]# pip list |grep futures|wc -l

0

2.virtualenvwrapper

virtualenvwrapper作用:集中管理虚拟环境

安装virtualenvwrapper

[root@sht-sgmhadoopcm-01 software]# pip install virtualenvwrapper

[root@sht-sgmhadoopcm-01 ~]# vim ~/.bash_profile

export WORKON_HOME=$HOME/.virtualenvs

export PROJECT_HOME=$HOME/workspace

source /bin/virtualenvwrapper.sh

[root@sht-sgmhadoopcm-01 ~]# source ~/.bash_profile

新建虚拟环境:mkvirtualenv [虚拟环境名称]

[root@sht-sgmhadoopcm-01 software]# mkvirtualenv test3_env

New python executable in /root/.virtualenvs/test3_env/bin/python

Installing setuptools, pip, wheel...

done.

virtualenvwrapper.user_scripts creating /root/.virtualenvs/test3_env/bin/predeactivate

virtualenvwrapper.user_scripts creating /root/.virtualenvs/test3_env/bin/postdeactivate

virtualenvwrapper.user_scripts creating /root/.virtualenvs/test3_env/bin/preactivate

virtualenvwrapper.user_scripts creating /root/.virtualenvs/test3_env/bin/postactivate

virtualenvwrapper.user_scripts creating /root/.virtualenvs/test3_env/bin/get_env_details

[root@sht-sgmhadoopcm-01 software]# mkvirtualenv test4_env

列出虚拟环境列表:workon或者lsvirtualenv

[root@sht-sgmhadoopcm-01 .virtualenvs]# workon

test3_env

test4_env

启动/切换虚拟环境:workon [虚拟环境名称]

[root@sht-sgmhadoopcm-01 .virtualenvs]# workon test3_env

(test3_env) [root@sht-sgmhadoopcm-01 .virtualenvs]# workon test4_env

删除虚拟环境:rmvirtualenv [虚拟环境名称]

(test4_env) [root@sht-sgmhadoopcm-01 .virtualenvs]# rmvirtualenv test3_env

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值