Python虚拟环境virtualenv与virtualenvwrapper使用详解

花开有时
花开有时
发布时间:2026-10-13 | 3人浏览过
原创

本文详细介绍Python虚拟环境工具virtualenv的安装与基本使用,包括创建、激活、停用及删除环境。针对管理不便问题,推荐进阶工具virtualenvwrapper,讲解其配置方法、环境集中管理及常用命令如mkvirtualenv、workon等,帮助开发者高效隔离项目依赖。

virtualenv 是一款用于构建独立 Python 运行环境的工具。它会在指定目录中生成包含 Python 解释器、pip 工具及标准库的文件夹,从而为 Python 项目提供隔离的依赖包安装空间。

安装

pip install virtualenv

基本使用

1. 为项目创建虚拟环境:

$ cd my_project_dir
$ virtualenv venv  #venv为虚拟环境目录名,目录名自定义

执行命令 `virtualenv venv` 会在当前目录生成一个名为 venv 的文件夹,其中包含 Python 可执行文件及 pip 库副本,便于后续安装其他依赖包。虚拟环境名称可自定义,若省略名称,文件将直接创建在当前目录下。

该命令会在当前运行目录中复制 Python 解释器,并将其存放于名为 venv 的文件夹内。

用户可以选择指定特定的 Python 解释器路径:

$ virtualenv -p /usr/bin/python2.7 venv   # -p参数指定Python解释器程序路径

此操作将使用位于 `/usr/bin/python2.7` 的 Python 解释器来创建环境。

2. 激活虚拟环境以开始使用:

$ source venv/bin/activate  

激活后,通过 pip 安装的包将仅保存在 venv 文件夹中,与系统全局 Python 环境完全隔离。

安装包的流程与普通方式相同,例如:

$ pip install requests

3. 完成工作后,可停用虚拟环境:

$ . venv/bin/deactivate

此操作将恢复系统默认的 Python 解释器,已安装的库也将回到默认状态。

若要删除虚拟环境,直接删除其所在文件夹即可(执行 `rm -rf venv`)。

使用 virtualenv 存在一定局限性,因为其启动和停止脚本依赖于特定文件夹。随着时间推移,系统中可能散落大量虚拟环境,导致难以记忆其名称或位置。

virtualenvwrapper

鉴于 virtualenv 在集中管理虚拟环境方面不够便捷,推荐使用 virtualenvwrapper。它提供了一系列命令,使虚拟环境的工作更加便捷,并将所有虚拟环境集中存放在同一目录下。

安装 virtualenvwrapper(需确保已安装 virtualenv)

pip install virtualenvwrapper
pip install virtualenvwrapper-win  #Windows使用该命令

安装完成后,在 `~/.bashrc` 文件中添加以下内容:

export WORKON_HOME=~/Envs
source /usr/local/bin/virtualenvwrapper.sh 

第一行定义 virtualenvwrapper 存储虚拟环境的目录。

第二行指定 virtualenvwrapper 脚本的路径,该路径对应 Python 安装目录下的 bin/virtualenvwrapper.sh。

source ~/.bashrc    #读入配置文件,立即生效

virtualenvwrapper 基本使用

1. 创建虚拟环境:mkvirtualenv

mkvirtualenv venv  

此命令将在 WORKON_HOME 变量指定的目录下新建一个名为 venv 的虚拟环境。

如需指定 Python 版本,可通过 `--python` 参数指定具体的 Python 解释器路径。

mkvirtualenv --python=/usr/local/python3.5.3/bin/python venv

2. 常用命令

查看当前所有虚拟环境目录

[root@localhost ~]# workon
py2
py3

切换到指定虚拟环境

[root@localhost ~]# workon py3
(py3) [root@localhost ~]# 

退出当前虚拟环境

(py3) [root@localhost ~]# deactivate
[root@localhost ~]# 

删除指定虚拟环境

rmvirtualenv venv

以上内容为本文的全部介绍,希望对您的学习有所帮助,也欢迎大家继续支持本站。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表