• Ubuntu版本为18.04

Virtualenv介绍

在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip安装到Python3的site-packages目录下。

如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python 3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?

这种情况下,每个应用可能需要各自拥有一套“独立”的Python运行环境。virtualenv就是用来为一个应用创建一套“隔离”的Python运行环境。

安装virtualenv

sudo pip3 install virtualenv
  • 由于安装virtualenv需要使用到Python包管理工具pip,因此需要提前安装好pip,命令如下:
# 查看是否安装
  pip3 list
  # 安装命令
  sudo apt-get install python3-pip
  # 查看已安装pip3的版本号有两种方式:
  pip3 -V
  pip3 --version

安装virtualenvwrapper

  • 安装virtualenvwrapper的主要原因是为了后期使用方便,由于每次开启虚拟环境需要找到虚拟环境所在目录的bin下的使用source运行activate,如:
source venv/bin/activate
  • 这就需要记住每个虚拟环境所在的目录,而且切换环境不够方便,因此我们需要安装virtualenvwrapper,这样能够省去每次开启虚拟环境切换目录的操作,从而更加方便快捷。
# 安装命令
  sudo apt-get install virtualenvwrapper

配置virtualenvwrapper

  • virtualenvwrapper安装完成后,需要配置一下才可以正常使用
  • 需要配置的文件是:/home/.bashrc
# 配置方法
  vim .bashrc
  
  # 打开文件后在文件最下方增加如下代码
  export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
  export WORKON_HOME=$HOME/.virtualenvs
  source /usr/local/bin/virtualenvwrapper.sh
  • 配置完成之后需要执行如下命令,才可以让编辑后的配置文件生效
source ~/.bashrc

创建虚拟环境

# mkvirtualenv -p python3 创建的虚拟环境名称
  mkvirtualenv -p python3 AlexLu_Django
  • 创建完成后自动进入刚刚创建的虚拟环境,可以看到命令行前面括号里就是当前虚拟环境的名称

查看已创建的虚拟环境

lsvirtualenv

进入/切换虚拟环境

# workon 要进入/切换到的虚拟环境名称
  workon AlexLu_Django

退出当前虚拟环境

deactivate

删除虚拟环境

# rmvirtualenv 需要删除的虚拟环境名称
  rmvirtualenv AlexLu_Flask
  • 需要注意的是不可删除当前所处的虚拟环境,如需删除需要退出或切换到其他虚拟环境

快捷进入虚拟环境目录

cdvirtualenv

快捷进入虚拟环境包安装目录

cdsitepackages
  • 此目录主要用于管理虚拟环境已安装的python包

你只管努力就好,最坏的结果也不过是大器晚成。