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。

相关推荐
CodeCraft Studio28 分钟前
国产化Excel开发组件Spire.XLS教程:将Python列表转换为Excel表格(3种实用场景)
开发语言·python·excel·spire.xls·python列表转excel·国产化文档开发
企鹅侠客32 分钟前
基于python写的PDF表格提取到excel文档
python·pdf·excel·pdf文档表格转excel
mortimer39 分钟前
Python 中那些鲜为人知但实用的工具函数
python
weixin_4211334144 分钟前
Django 的文档接口
python·django·sqlite
LK_071 小时前
【Open3D】Ch.3:顶点法向量估计 | Python
开发语言·笔记·python
小码哥0682 小时前
智能化招聘系统设计与实现-Java
开发语言·python
饮浊酒2 小时前
Python学习-----小游戏之人生重开模拟器(普通版)
python·学习·游戏程序
CryptoRzz2 小时前
越南k线历史数据、IPO新股股票数据接口文档
java·数据库·后端·python·区块链
chenchihwen2 小时前
深度解析RAG系统中的PDF解析模块:Docling集成与并行处理实践
python·算法·pdf
MasonYyp2 小时前
简单使用Marker
python·语言模型