1
0
wiki/Tech/programming-language/Python/项目/虚拟环境/概述.md

32 lines
2.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: 概述
description: Python 虚拟环境概述
keywords:
- Python
- 虚拟环境
- 概述
tags:
- Python/虚拟环境
- 技术/程序语言
author: 7Wate
date: 2023-01-1
---
虚拟环境是一种在单独的目录中为 Python 项目创建独立的 Python 运行环境的方式。这样可以确保**项目所需的包和版本与其他项目隔离开来,避免版本冲突**。
在 Python 中,有很多工具可以用来创建和管理虚拟环境,如下:
- [venv](https://docs.python.org/zh-cn/3/library/venv.html)Python3 中自带的轻量级虚拟环境管理工具。
- [virtualenv](https://virtualenv.pypa.io/):一款老牌、成熟的虚拟环境管理工具。
- [Poetry](https://python-poetry.org/):一个面向未来的 Python 依赖管理和打包工具。
- [pipenv](https://pipenv.pypa.io/):一个较新的结合 pip 和 virtualenv 的虚拟环境管理工具。
- [Conda](https://docs.conda.io/projects/conda/):一个跨平台的包(或库)和虚拟环境管理系统。
| 工具 | 优点 | 缺点 | 不同点 |
| ---------- | ------------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------------ |
| venv | Python3 内置工具,无需安装额外的包,简单易用的虚拟环境管理。 | 比其他工具poetry、pipenv功能较弱。 | venv 是 Python3 内置工具无需安装额外的包venv 更简单易用,功能不如其他工具强大。 |
| virtualenv | 广泛使用且文档齐全,兼容 Python2 和 Python3。 | 比其他工具poetry、pipenv功能较弱。 | virtualenv 是第三方包需要预先安装virtualenv 更简单易用,功能不如其他工具强大。 |
| poetry | 强大的依赖管理功能,支持创建和发布包,与其他工具集成良好。 | 不如 pip 和 virtualenv 广泛使用,相对较新,文档较少。 | poetry 比 venv 和 virtualenv 更强大的依赖管理功能poetry 适合创建和发布包,不如 venv 和 virtualenv 简单。 |
| pipenv | 强大的包和环境管理功能,简单易用,能与其他工具良好的集成。 | 不如 pip 和 virtualenv 广泛使用, 相对较新,文档较少。 | pipenv 比 venv 和 virtualenv 更强大的依赖管理功能pipenv 简易好用,不如 venv 和 virtualenv 简单易用。 |
| conda | 强大的包和环境管理功能,适合科学计算和数据科学,跨平台支持。 | 不如 pip 和 virtualenv 广泛使用,相对较新,文档较少。 | conda 比 venv 和 virtualenv 更强大的依赖管理功能conda 适用于科学计算和数据科学,不如 venv 和 virtualenv 简单易用。 |