首页/新闻资讯/正文详情

【python虚拟环境管理】【mac m3】使用poetry管理python项目

发布时间:2026/11/3 18:20:00 来源:云帆数科 栏目:资讯中心
【python虚拟环境管理】【mac m3】使用poetry管理python项目
文章目录一. 为什么选择poetry二. poetry相关操作1. 创建并激活环境2. 依赖包管理2.1. 安装项目依赖1.2. 管理不同开发环境的依赖1.3. 依赖维护1.4. 项目相关Poetry是Python中用于依赖管理和打包的工具。它允许您声明项目所依赖的库并将为您管理安装/更新它们。Poetry提供了一个锁定文件以确保可重复安装并可以构建用于分发的项目。一. 为什么选择poetry在项目规模扩大时依赖关系管理变得更为复杂此时为什么Poetry 这样的工具变得必要增加的依赖关系数量 随着项目规模的增大项目通常会引入更多的依赖关系。不同的依赖可能需要特定版本而这可能导致依赖冲突。环境难以重现 当项目的依赖关系数量增加时使用传统的依赖管理工具如 pip 或 Conda可能会导致环境难以重现。这意味着在不同的开发环境或部署环境中依赖的版本和配置可能会有所不同从而增加了出现问题的可能性。维护困难 仅仅依靠 pip 或 Conda 进行依赖管理可能需要手动维护 requirements.txt 或 environment.yml 等文件。这种方式可能导致配置文件的冗长和复杂性增加了维护项目一致性的难度。Poetry 的优势Poetry 提供了一个新的方法来管理 Python 项目的依赖关系和环境。它通过统一的 pyproject.toml 文件来管理项目的依赖提供了更简洁、更清晰的方式定义项目的依赖关系和版本约束。Poetry 还支持锁定依赖版本确保在不同的环境中都可以重现相同的依赖关系从而增强了项目的可重现性和一致性。Poetry 还包括便捷的虚拟环境管理功能可以帮助隔离项目环境避免与系统或其他项目的依赖冲突。此外Poetry 支持项目的打包和发布使得分发 Python 应用程序变得更加简单和一致。二. poetry相关操作1. 创建并激活环境创建新的 Poetry 项目# my-project 虚拟环境名称#这个命令会创建一个名为 my-project 的新目录并在其中生成一个基本的 Poetry 项目结构。# 可以使用 --path 或 -p 选项来指定一个特定的目录。poetry new my-project项目初始化# 如果是已有项目转为使用poetry作为依赖管理可以进行初始化poetry init激活虚拟环境# 在项目创建后通过如下命令来激活环境# 这个命令会安装 pyproject.toml 中定义的所有依赖项并激活虚拟环境。poetryinstall查看当前环境信息poetryenvinfo2. 依赖包管理2.1. 安装项目依赖# 安装pyproject.toml文件中的全部依赖poetryinstall# 安装最新稳定版本的flaskpoetryaddnumpy# 指定具体的版本poetryaddflask2.22.0当然也可以使用pip来安装依赖只要注意pip安装在此虚拟环境下。1.2. 管理不同开发环境的依赖通过添加配置参数–dev来区分不同环境下的依赖包。# 指定为开发依赖会写到pyproject.toml中的[tool.poetry.dev-dependencies]区域poetryaddpytest--dev# 只安装非development环境的依赖一般部署时使用poetryinstall--no-dev1.3. 依赖维护# 更新所有锁定版本的依赖包poetry update#更新指定依赖包poetry update numpy# 卸载依赖包poetry remove numpy1.4. 项目相关# 查看项目安装的依赖poetry show# 查看可以更新的依赖poetry show--outdated# 树形结构查看项目安装的依赖poetry show-t参考https://blog.csdn.net/qq_40851623/article/details/135769991

相关推荐

TabPFN-2.6案例研究:在真实世界表格数据上的10个成功应用
TabPFN-2.6案例研究:在真实世界表格数据上的10个成功应用

TabPFN-2.6案例研究:在真实世界表格数据上的10个成功应用 【免费下载链接】tabpfn_2_6 项目地址: https://ai.gitcode.com/hf_mirrors/Prior-Labs/tabpfn_2_6 TabPFN-2.6是一款革命性的表格预测基础模型,它通过上下文学习在单次前向传播中解决表… · 2026/11/3 18:18:59

【大数据运维】大数据常见shell命令
【大数据运维】大数据常见shell命令

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 18:17:57

StreamTask数据流:StreamTask能力概述、Flink处理网络数据逻辑
StreamTask数据流:StreamTask能力概述、Flink处理网络数据逻辑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 18:17:57

Minke如何自动发现并启动本地模型:model-runtime对LM Studio与Ollama的生命周期设计深挖
Minke如何自动发现并启动本地模型:model-runtime对LM Studio与Ollama的生命周期设计深挖

【免费下载链接】Minke 🐳 DeepSeek Harness Desktop 项目地址: https://gitcode.com/gh_mirrors/mink/Minke 点击查看 免费下载 Minke 是一款基于 DeepSeek Harness 的桌面 AI 开发工具,内置的 model-runtime 模块能自动发现并启动本机的 L… · 2026/11/3 19:01:01

C# 求抛物线的顶点、焦点和准线(Finding the vertex, focus and directrix of a parabola)
C# 求抛物线的顶点、焦点和准线(Finding the vertex, focus and directrix of a parabola)

如果您喜欢此文章,请收藏、点赞、评论,谢谢,祝您快乐每一天。问题:已知抛物线方程的系数,求其顶点、焦点和准线。平面上由若干点构成的曲线,使得曲线上任意一点到焦点的距离相等,则该点构成的曲… · 2026/11/3 19:01:01

天气接口为什么重要:从终端服务到行业气象应用的连接方式
天气接口为什么重要:从终端服务到行业气象应用的连接方式

在手机天气、旅游规划、无人机作业、智能空调和赛事保障等场景中,用户看到的往往只是一个温度或降雨提示,背后却涉及数据采集、预报模型、接口调用、风险识别和业务决策等多个环节。对于企业来说,天气接口不仅是“获取天气数据”的工具&#… · 2026/11/3 19:01:01

HarmonyOS API 26 Navigation 异步替换:replaceDestination、错误码与失败留栈
HarmonyOS API 26 Navigation 异步替换:replaceDestination、错误码与失败留栈

HarmonyOS API 26 Navigation 异步替换:replaceDestination、错误码与失败留栈replaceDestination 的价值不只是返回 Promise,而是让调用方有机会区分“请求已发出”和“页面确实可用”。工程治理要围绕成功提交点、错误分类、失败留栈和重复操作展开。一… · 2026/11/3 19:01:01

C++ 求抛物线的顶点、焦点和准线(Finding the vertex, focus and directrix of a parabola)
C++ 求抛物线的顶点、焦点和准线(Finding the vertex, focus and directrix of a parabola)

如果您喜欢此文章,请收藏、点赞、评论,谢谢,祝您快乐每一天。问题:已知抛物线方程的系数,求其顶点、焦点和准线。平面上由若干点构成的曲线,使得曲线上任意一点到焦点的距离相等,则该点构成的曲… · 2026/11/3 19:01:01

Ventoy 持久化教程:一次建好 persistence.dat,U盘 Linux 数据跟着走
Ventoy 持久化教程:一次建好 persistence.dat,U盘 Linux 数据跟着走

Ventoy 持久化教程:一次建好 persistence.dat,U盘 Linux 数据跟着走 【免费下载链接】Ventoy A new bootable USB solution. 项目地址: https://gitcode.com/GitHub_Trending/ve/Ventoy Ventoy 持久化解决的烦恼很具体:从 U 盘启动的 … · 2026/11/3 18:59:59

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 6:04:24

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 5:52:46

STM32F411RE与MAX14431实现SPI隔离:工业现场抗共模干扰实战
STM32F411RE与MAX14431实现SPI隔离:工业现场抗共模干扰实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59

ESP32+大模型AI硬件开发:从Demo到产品的8个工程问题
ESP32+大模型AI硬件开发:从Demo到产品的8个工程问题

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59

基于MAX14431BAEE+与PIC18F85J10的SPI隔离方案设计与实践
基于MAX14431BAEE+与PIC18F85J10的SPI隔离方案设计与实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 6:04:24

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 5:52:46

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码