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。

相关推荐
爱隐身的官人29 分钟前
cfshow-web入门-php特性
python·php·ctf
gb42152871 小时前
java中将租户ID包装为JSQLParser的StringValue表达式对象,JSQLParser指的是?
java·开发语言·python
THMAIL1 小时前
量化股票从贫穷到财务自由之路 - 零基础搭建Python量化环境:Anaconda、Jupyter实战指南
linux·人工智能·python·深度学习·机器学习·金融
~-~%%1 小时前
从PyTorch到ONNX:模型部署性能提升
人工智能·pytorch·python
蒋星熠1 小时前
Flutter跨平台工程实践与原理透视:从渲染引擎到高质产物
开发语言·python·算法·flutter·设计模式·性能优化·硬件工程
爬虫程序猿2 小时前
《京东商品详情爬取实战指南》
爬虫·python
胡耀超2 小时前
4、Python面向对象编程与模块化设计
开发语言·python·ai·大模型·conda·anaconda
大佬,救命!!!3 小时前
整理python快速构建数据可视化前端的Dash库
python·信息可视化·学习笔记·dash·记录成长
孔丘闻言3 小时前
python调用mysql
android·python·mysql
Teletele-Lin3 小时前
Miniconda安装与VSCode搭建远程Python、Jupyter开发环境
vscode·python·jupyter·环境配置·远程开发