hanqunfeng's blog

Python--virtualenv

摘要

官方网站:https://virtualenv.pypa.io/en/stable/installation/

  • 执行python项目时都需要为其安装运行环境需要的依赖,比如有些项目需要在python2下运行,有些项目需要在python3下运行,有些项目需要安装mysqlclient依赖,有些项目需要django依赖,如果这些依赖都被安装在统一的系统环境中,势必彼此之间会造成干扰,特别是需要同一个依赖的不同版本时更是难以维护;
  • virtualenv可以为python项目创建独立的虚拟运行环境,这样不同的项目可以运行在各自独立的执行环境中而彼此之间不受干扰;
  • 在使用pycharm创建项目时,需要指定python执行器,此时就是创建的虚拟环境。

安装

pip3 install virtualenv

  • 本文使用python3的pip命令安装virtualenv,所以默认情况下创建虚拟环境时都是python3的执行环境,可以通过--python参数指定python的执行环境,详见下文『创建新的虚拟环境』

创建新的虚拟环境

virtualenv venv1 # 当前目录下创建venv1文件夹,并在其下创建python环境

  • 默认情况下,除了python本身的命令外不包含系统环境下的第三方依赖,比如系统环境已经安装好django、mysqlclient等,都不会带过来,需要重新在当前虚拟环境下安装。

  • 如果希望访问系统环境中的某些第三方依赖,可以在创建虚拟环境时执行如下命令:
    virtualenv venv1 --system-site-packages #此时当前虚拟环境就可以访问系统环境了

  • python本身支持python2和python3同时共存,可以指定python命令路径,比如使用python2的环境

    --python
    1
    2
    3
    4
    5
    6
    7

    ## 激活虚拟环境
    `source activate`
    ```shell
    cd venv1/bin
    hanqunfengdeMacBook-Pro:bin hanqunfeng$ source activate
    (venv1) hanqunfengdeMacBook-Pro:bin hanqunfeng$
  • 激活后所有python相关命令都变为venv1下的命令了

退出虚拟环境

deactivate

1
2
(venv1) hanqunfengdeMacBook-Pro:bin hanqunfeng$ deactivate
hanqunfengdeMacBook-Pro:bin hanqunfeng$

删除虚拟环境

rm -rf venv1 删除venv1目录即可

热评文章