virtualenv隔离Python环境的问题解析

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

本文详解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 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。