A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 梁强 于 2018-6-7 14:30 编辑

动态语言Ruby、Python都有自己的虚拟环境,虚拟环境是程序执行时的独立执行环境,在同一台服务器中可以创建不同的虚拟环境供不同的系统使用,项目之间的运行环境保持独立性而相互不受影响。例如项目可以在基于Python2的环境中运行,而项目B可以在基于Python3的环境中运行。Python通virtualenv工具管理虚拟环境。
安装 virtualenv
[Python] 纯文本查看 复制代码
$ pip install virtualenv
使用方法

[Python] 纯文本查看 复制代码
$ cd my_project_folder
$ virtualenv venv

执行完命令后它会在当前目录下创建文件夹,这个文件夹包含一些Python执行文件,以及pip副本,用于安装其他的packges。
[Python] 纯文本查看 复制代码
.
├── bin
│   ├── activate
│   ├── activate.csh
│   ├── activate.fish
│   ├── activate_this.py
│   ├── easy_install
│   ├── easy_install-3.5
│   ├── pip
│   ├── pip3
│   ├── pip3.5
│   ├── python -> python3
│   ├── python3
│   ├── python3.5 -> python3
│   └── wheel
├── include
│   └── python3.5m -> /Library/Frameworks/Python.framework/Versions/3.5/include/python3.5m
└── lib
    └── python3.5

此外在创建env的时候可以选择指定的Python解释器,例如下面是基于Python3创建的虚拟环境

[Python] 纯文本查看 复制代码
$ virtualenv -p /usr/local/bin/python3 venv
默认情况下,虚拟环境会依赖系统环境中的site packages,就是说系统中已经安装好的第三方package也会安装在虚拟环境中,如果不想依赖这些package,那么可以加上参数 --no-site-packages建立虚拟环境

[Python] 纯文本查看 复制代码
virtualenv --no-site-packages [虚拟环境名称]激活虚拟环境
cd env
source ./bin/activate

激活成功后,在命令行会显示虚拟环境的名称,类似((env)Your-Computer:your_project UserName$)
退出虚拟环境
[Python] 纯文本查看 复制代码
$ deactivate
如果想删除虚拟环境,那么直接运行rm -rf venv/命令即可。
在虚拟环境安装Python packages
Virtualenv 附带有pip安装工具,因此需要安装的packages可以直接运行:

[Python] 纯文本查看 复制代码
pip install [套件名称]
如果没有启动虚拟环境,系统环境也安装了pip工具,那么packages将被安装在系统环境中,为了避免发生此事,可以在~/.bashrc文件中加上:

[Python] 纯文本查看 复制代码
export PIP_REQUIRE_VIRTUALENV=true
如果在没开启虚拟环境时运行pip,就会提示错误:

[Python] 纯文本查看 复制代码
Could not find an activated virtualenv (required).Virtualenvwrapper

Virtaulenvwrapper是virtualenv的扩展包,用于更方便管理虚拟环境,它可以做:\1. 将所有虚拟环境整合在一个目录下\2. 管理(新增,删除,复制)虚拟环境\3. 切换虚拟环境\4. ...
安装Virtualenvwrapper
安装Virtualenvwrapper前需要virtualenv已近安装

[Python] 纯文本查看 复制代码
$ pip install virtualenvwrapper
此时还不能使用virtualenvwrapper,默认virtualenvwrapper安装在/usr/local/bin下面,实际上你需要运行virtualenvwrapper.sh文件才行,先别急,打开这个文件看看,里面有安装步骤,我们照着操作把环境设置好。
  • 创建目录用来存放虚拟环境

    [Python] 纯文本查看 复制代码
    mkdir $HOME/Envs

    • 编辑~/.zshrc或~/.bashrc(根据你使用shell类型决定)
      [Python] 纯文本查看 复制代码
      export WORKON_HOME=$HOME/Envs source /usr/local/bin/virtualenvwrapper.sh 3. 运行:
      $ source ~/.zshrc


此时virtualenvwrapper就可以使用了。virtualenvwrapper的基本使用方式:
2.列出虚拟环境列表

workon 或者 lsvirtualenv
1.新建虚拟环境
[Python] 纯文本查看 复制代码
mkvirtualenv [虚拟环境名称]
  • 启动/切换虚拟环境
    [Python] 纯文本查看 复制代码
    workon [虚拟环境名称]
  • 删除虚拟环境
    [Python] 纯文本查看 复制代码
    rmvirtualenv [虚拟环境名称]
  • 离开虚拟环境,和virutalenv一样的命令
    [Python] 纯文本查看 复制代码
    deactivate


1 个回复

倒序浏览
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马