Poetry 介绍和安装指南 - Ubuntu 24

Poetry 介绍和安装指南

原文: https://www.qiulin-dev.top/articles/9a952d18-2333-44ac-a100-7aeb19d0027e

1. 什么是 Poetry?

Poetry 是 Python 项目中流行的依赖管理和打包工具。它能够帮助开发者简单地管理项目的依赖库、虚拟环境、以及发布 Python 包。

与传统的 piprequirements.txt 不同,Poetry 提供了一个统一的方式来管理项目的依赖项,同时生成锁定文件 (poetry.lock),确保在不同环境下依赖的版本一致。Poetry 还简化了打包发布 Python 库的流程,允许用户通过一条命令进行发布。

1.1 Poetry 的主要功能

  • 依赖管理:使用简单直观的命令来添加、移除和更新依赖项,并生成精确的锁定文件。
  • 虚拟环境管理:Poetry 会自动为每个项目创建并管理虚拟环境,无需手动配置。
  • 包发布:内置的打包和发布工具,能够快速将项目发布到 PyPI 或其他源。
  • 易于集成:可以方便地与 CI/CD 管道集成,确保版本控制和依赖一致性。

2. Poetry 的安装

Poetry 的安装十分简单,它支持大多数主流的操作系统(Windows、macOS、Linux)。

  1. 使用官方安装脚本

Poetry 官方推荐的安装方式是通过他们提供的安装脚本。该脚本可以自动下载并配置 Poetry。

在终端(或命令行)中执行以下命令:

bash 复制代码
curl -sSL https://install.python-poetry.org | python3 -
  1. 添加环境变量 ~/.bashrc :
bash 复制代码
export PATH="/home/user/.local/bin:$PATH"
  1. 验证安装
bash 复制代码
poetry --version

3. 使用 Poetry 创建新项目

Poetry 提供了一条命令来创建新的 Python 项目:

bash 复制代码
poetry new my-project

这将会在当前目录下创建一个名为 my-project 的文件夹,并包含基础的项目结构。接下来,您可以进入项目目录并安装依赖:

bash 复制代码
poetry new my-project

Poetry 会自动为项目创建虚拟环境,并安装所有定义的依赖项

4. 小结

Poetry 是现代 Python 项目开发中的强大工具,简化了依赖管理和打包流程。通过它,您可以更加轻松地创建、管理和发布 Python 项目。如果您希望更深入地了解 Poetry 的功能和用法,可以参考 官方文档

5 设置清华镜像(可选)

  • 通过以下命令为单个项目设置首选镜像:
bash 复制代码
poetry source add --priority=primary mirrors https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/
  • 通过以下命令为单个项目设置补充镜像:
bash 复制代码
poetry source add --priority=supplemental mirrors https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/

Poetry 尚未支持全局设置镜像。参考 issue 1632。

相关推荐
老朋友此林1 小时前
MiniMind:3块钱成本 + 2小时!训练自己的0.02B的大模型。minimind源码解读、MOE架构
人工智能·python·nlp
宸汐Fish_Heart2 小时前
Python打卡训练营Day22
开发语言·python
伊织code3 小时前
PyTorch API 9 - masked, nested, 稀疏, 存储
pytorch·python·ai·api·-·9·masked
wxl7812273 小时前
基于flask+pandas+csv的报表实现
python·flask·pandas
鸡鸭扣4 小时前
DRF/Django+Vue项目线上部署:腾讯云+Centos7.6(github的SSH认证)
前端·vue.js·python·django·腾讯云·drf
钢铁男儿4 小时前
Python中的标识、相等性与别名:深入理解对象引用机制
java·网络·python
且慢.5894 小时前
Python_day22
python·机器学习
虚空之月&&轮舞者4 小时前
Python与矢量网络分析仪3671E:通道插损自动化校准(Vscode)
网络·python·自动化
西红柿土豆丶4 小时前
基于Flask、Bootstrap及深度学习的水库智能监测分析平台
人工智能·python·深度学习·flask·bootstrap
老胖闲聊4 小时前
Python httpx库终极指南
开发语言·python·httpx