- VisualStudio2022插件的安装及使用-编程手把手系列文章
- pprof-在现网场景怎么用
- C#实现的下拉多选框,下拉多选树,多级节点
- 【学习笔记】基础数据结构:猫树
venv、virtualenv、pipenv、Poetry、Miniforge 和 Anaconda 都是用于管理 Python 环境和依赖关系的工具,但它们在功能和使用场景上有一些显著的区别。以下是它们的主要区别:
轻量级:
venv
是 Python 3.3 及以上版本标准库的一部分,专门用于创建 Python 虚拟环境。环境管理:
venv
可以创建独立的 Python 虚拟环境,每个环境有自己的一套 Python 解释器和包。venv
创建的环境通常较小,因为它们只包含必要的 Python 包。包管理:
venv
本身不提供包管理功能,通常与 pip
结合使用来安装和管理 Python 包。requirements.txt
文件来记录项目的依赖关系。使用场景:
使用示例:
在命令行中,使用 python3 -m venv myenv 创建一个名为 myenv 的虚拟环境.
python3 -m venv myenv # 创建虚拟环境
source myenv/bin/activate # 激活环境 Linux/macOS
myenv\Scripts\activate # 激活环境 Windows
pip install requests # 安装包
独立工具:
virtualenv
是一个独立的第三方工具,用于创建 Python 虚拟环境。venv
更早出现,功能也更丰富一些。适用于 Python 2 和 Python 3。环境管理:
virtualenv
可以创建独立的 Python 虚拟环境,每个环境有自己的一套 Python 解释器和包。包管理:
virtualenv
本身不提供包管理功能,通常与 pip
结合使用来安装和管理 Python 包。requirements.txt
文件来记录项目的依赖关系。使用场景:
使用示例:
安装并创建虚拟环境:
pip install virtualenv # 安装 virtualenv
virtualenv myenv # 创建虚拟环境
source myenv/bin/activate # 激活环境 Linux/macOS
myenv\Scripts\activate # 激活环境 Windows
pip install requests # 安装包
集成工具:
pipenv
是一个集成了 virtualenv
和 pip
的工具,用于管理虚拟环境和依赖关系。Pipfile
和 Pipfile.lock
文件来管理项目的依赖关系。环境管理:
pipenv
会自动为每个项目创建和管理一个独立的虚拟环境,避免不同项目之间的依赖冲突。包管理:
pipenv
自动处理依赖关系的解析和安装,确保项目的所有依赖都能正确安装。Pipfile.lock
文件,确保在不同环境中安装相同的依赖版本,支持语义化版本管理。使用场景:
使用示例:
需要单独安装 pipenv,通常通过 pip 安装:
pip install pipenv # 安装 pipenv
pipenv install requests # 安装包
pipenv shell # 激活虚拟环境
多功能:
Poetry
是一个现代的 Python 包管理和环境管理工具,不仅管理虚拟环境,还管理项目的依赖关系。pyproject.toml
文件来管理项目的依赖关系,这个文件是 PEP 518 推荐的标准配置文件。环境管理:
Poetry
会自动为每个项目创建和管理一个独立的虚拟环境,避免不同项目之间的依赖冲突。包管理:
Poetry
自动处理依赖关系的解析和安装,确保项目的所有依赖都能正确安装。lock
文件(poetry.lock
),确保在不同环境中安装相同的依赖版本。包发布:
Poetry
提供了简便的命令来打包和发布 Python 包到 PyPI 或其他私有仓库。setup.py
和 MANIFEST.in
文件,简化发布流程。版本管理:
Poetry
支持语义化版本管理,可以方便地管理项目的版本号。使用场景:
使用示例:
Poetry
提供了丰富的命令行工具,可以轻松地管理依赖项、构建和发布项目。pip install poetry
poetry new my_project
cd my_project
poetry add requests
poetry install # 创建虚拟环境并安装依赖
Anaconda 替代品:
Miniforge
是一个轻量级的 Anaconda 替代品,基于 Conda 包管理器。conda-forge
社区维护。环境管理:
Miniforge
使用 Conda 来管理虚拟环境,可以创建独立的环境,每个环境有自己的一套 Python 解释器和包。包管理:
Miniforge
使用 Conda 来管理包,Conda 是一个跨平台的包管理系统,支持多种语言和工具。使用场景:
使用示例:
# 安装 Miniforge - Linux
wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh
bash Miniforge3-Linux-x86_64.sh
# 创建环境
conda create --name my_env python=3.13
conda activate my_env
# 安装包
conda install requests
综合包管理器:
AnaConda
是一个开源的包管理和环境管理系统,支持多种语言和工具,而不仅仅是 Python。环境管理:
AnaConda
可以创建独立的环境,每个环境有自己的一套 Python 解释器和包。environment.yml
文件来定义环境和依赖。包管理:
AnaConda
可以安装来自 Anaconda 仓库和其他自定义仓库的包。使用场景:
使用示例:
# 安装 Anaconda 或 Miniconda
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
# 创建环境
conda create --name my_env python=3.13
conda activate my_env
# 安装包
conda install requests
venv:
virtualenv:
pipenv:
Pipfile
和 Pipfile.lock
文件来管理依赖关系。Poetry:
Miniforge:
Anaconda:
使用 venv:
使用 virtualenv:
使用 pipenv:
使用 Poetry:
使用 Miniforge:
使用 Anaconda:
最后此篇关于管理Python环境和依赖关系的工具venv、virtualenv、pipenv、poetry、miniforge和anaconda的区别的文章就讲到这里了,如果你想了解更多关于管理Python环境和依赖关系的工具venv、virtualenv、pipenv、poetry、miniforge和anaconda的区别的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
Poetry 有一个非常好的版本求解器,有时太好了 :) 我试图在一个使用两个不兼容包的项目中使用诗歌。然而,它们仅通过声明不兼容,因为其中之一不再开发,否则它们一起工作就好了。 使用 pip 我可以
我的问题: Python工具Poetry如何知道一个项目的虚拟环境的路径? 说明: 当我在目录中运行 poetry init 时,会创建一个新项目。然后我运行 poetry install 并创建一个
使用 Poetry,我想找到可用于安装的特定软件包的所有版本。有可能实现吗? (类似于 Python and pip, list all versions of a package that's av
我最近安装了 Pyenv 和 Poetry,想创建一个新的 Python 3.8 项目。我已经设置了 global和 local python 版本到 3.8.1使用适当的 Pyenv 命令(例如 p
将 [tool.poetry.extras] 部分添加到 pyproject.toml 后,Poetry 会显示以下警告,例如在安装时: Warning: The lock file is not u
如何升级到最新版本? 规范: Windows 10, Visual Studio 代码, Ubuntu Bash。 当前版本: me@PF2DCSXD:/mnt/c/Users/user/Docume
vscode-screenshot 我很确定一切都井然有序,但它在运行服务器或刷新服务器(通过保存 python 文件)时不断显示这首诗。请帮忙,这很烦人。 最佳答案 Python 之禅打印为 by
有一个简单但令人困惑的问题:当我尝试在模块中使用它时,我用 poetry 添加的包无法导入。采取的步骤: 诗歌添加sendgrid 在模块中,import sendgrid 错误: 导入“sendgr
vscode-screenshot 我很确定一切都井然有序,但它在运行服务器或刷新服务器(通过保存 python 文件)时不断显示这首诗。请帮忙,这很烦人。 最佳答案 Python 之禅打印为 by
有一个简单但令人困惑的问题:当我尝试在模块中使用它时,我用 poetry 添加的包无法导入。采取的步骤: 诗歌添加sendgrid 在模块中,import sendgrid 错误: 导入“sendgr
Poetry项目是 Python 的依赖管理系统。它使用新的 pyproject.toml文件作为其配置文件。 Poetry 工具支持几种不同的方式来指定您的依赖项的允许版本。 Poetry 依赖项的
管理 Python 环境和依赖关系的工具 venv、virtualenv、pipenv 、poetry 、 miniforge 和 anaconda 的区别 venv、virtualenv、pipe
我正在尝试为我的 poetry 环境安装 Jupyter 内核,但该内核似乎获得了我的基础 conda 环境。这是我正在尝试的: poetry env list >ENV_NAME-HASH-py3.
每当我尝试在 git 存储库中的 powershell 上运行 poetry install 时,我总是收到这个奇怪的错误,我真的不知道那可能是什么。我正在使用 Windows 10 和 Python
我喜欢初始化一个诗歌生成的项目,而无需通过交互式 shell 获取版本和依赖项等。 但是,尝试摆弄命令行选项的几次尝试都失败了。 比如 poetry init --name my_proj --des
我在 VSCode 中使用 Poetry,但在运行时遇到错误 import apache_beam as beam from apache_beam.options.pipeline_options
如果我想开发一个仅适用于 Linux 和 macOS 的 Python 包。如何在 Python Poetry 中指定此限制? 最佳答案 Trove classifiers pyproject.tom
Post-install script with Python setuptools 正是这个问题,但是使用 Poetry 而没有 Setuptools。 我想跑 print('Installatio
macOS Mojave 10.14.6Python 3.7.2 我像文档中那样安装了 python poetry: curl -sSL https://raw.githubusercontent.c
我正在开发一个 python 项目,它使用 pythonnet 和几个 C# dll 作为依赖项。 由于我不想将 dll 推送到 git 存储库,因此我调整了 .gitignore 文件。但是,现在
我是一名优秀的程序员,十分优秀!