virtualenv隔离Python环境的问题解析

半杯拿铁
半杯拿铁
发布时间:2026-10-15 | 2人浏览过
原创

本文详解virtualenv如何为Python应用提供隔离运行环境,解决多版本冲突。涵盖Linux/Windows下的安装、创建、激活及退出步骤,解析--no-site-packages参数及版本兼容性问题,并介绍virtualenvwrapper的便捷管理功能。

virtualenv介绍

virtualenv旨在为应用程序构建独立的Python运行环境,从而有效解决不同应用之间对Python版本依赖产生的冲突。具体而言,virtualenv会复制一份系统Python环境至指定目录,当通过命令source venv/bin/activate进入该虚拟环境时,virtualenv会动态修改相关环境变量,使得执行的python和pip命令均指向当前虚拟环境内的解释器和包管理工具。

virtualenv应用

pip3 install virtualenv

创建项目

mkdir myprojectcd myproject/

创建一个新的python环境

virtualenv --no-site-packages py_new
# 参数:--no-site-packages 已经安装到系统Python环境中的所有第三方包都不会复制过来

新建的Python环境将被创建在当前目录下的py_new目录中。获得py_new环境后,可以通过source命令激活并进入该环境:

source py_new/bin/activate

在py_new环境下使用pip安装的包仅存在于该虚拟环境中,系统级别的Python环境不会受到任何影响。

pip install pandas

退出当前的py_new环境

deactivate

退出后,再次执行的pip或python命令将恢复指向系统Python环境。

补充:virtualenv创建“隔离”的Python运行环境

Windows 安装mkvirtualenv

pip install virtualenv
pip install virtualenvwrapper  

新建虚拟python环境:

1.创建python工程目录: 2.创建一个独立的Python运行环境,命名为redis:

virtualenv  redis

3.激活环境:(或workon)

cd D:\05_python_virtualenv\redis\Scripts
.\activate

注意到命令提示符变了,有个(venv)前缀,表示当前环境是一个名为venv的Python环境

4.退出当前的venv环境:deactivate

出现错误:virtualenv: error: unrecognized arguments: --no-site-packages 使用virtualenv --version,看到版本大于20,就默认这个参数,可以取消掉–no-site-packages

virtualenvwrapper --help
rmvirtualenv redis

在win电脑的环境变量-系统变量:新增:WORKON_HOME,为D:\05_python_virtualenv

到此这篇关于virtualenv隔离Python环境的文章就介绍到这了,更多相关virtualenv隔离Python环境内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

本站声明

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

Python 相关产品和应用

全部下载

专题列表