peotry

ops/2024/10/19 3:33:10/

简介

peotry可以进行依赖管理(支持锁定版本)、虚拟环境管理,可以处理复杂的依赖关系和版本冲突,简化构建和发布。
相对pip的优势:能解决版本冲突,移除某个组件会把相关依赖都移除,pip只会移除本身,导致后续包冲突可能性较大。

安装

为了避免peotry需要的依赖跟你的项目冲突,通常我们使用pipx安装peotry,pipx会为安装的每个工具单独创建一个虚拟环境,把工具对应的二进制可执行文件放入到PATH中。

# windows install pipx, doc: https://pipx.pypa.io/stable/installation/
pip install --user pipx
# 环境变量添加pipx管理的工具(%USERPROFILE%\.local\bin和<USER folder>\AppData\Roaming\Python\Python3x\Scripts)
pipx ensurepath# ubuntu install pipx
sudo apt update
sudo apt install pipx
pipx ensurepath
sudo pipx ensurepath --global # optional to allow pipx actions in global scope. See "Global installation" section below.# pipx会为每个独立的python工具创建一个单独的虚拟环境,并将工具的可执行文件链接到~/.local/bin/poetry
pipx install poetry

使用

项目基本操作

# 设置在项目中创建虚拟环境
poetry config virtualenvs.in-project true# 初始化项目
poetry init
poetry env list
poetry env info --path# 添加依赖
poetry add fastapi
# 安装依赖
poetry install
# 移除依赖
poetry remove fastapi

配置镜像仓库

镜像仓库可以直接用pip的,配置语法稍微有些不同。
针对项目配置:

# 会修改项目的pyproject.toml文件
poetry source add tuna --priority=primary https://pypi.tuna.tsinghua.edu.cn/simple
poetry lock --no-update# 安装新的依赖,并更新已安装的依赖项到符合要求的版本
poetry install
# 确保已安装的依赖跟pyproject.toml中声明的一致,会移除不需要的包避免包冲突
poetry install --sync --no-cache --no-root

全局配置
%APPDATA%\pypoetry\config.toml

[[tool.poetry.source]]
name = "ali"
url = "https://mirrors.aliyun.com/pypi/simple/"
priority = "primary"
[repositories.ali]
url = "https://mirrors.aliyun.com/pypi/simple/"[virtualenvs]
in-project = true

http://www.ppmy.cn/ops/90120.html

相关文章

RF放大器(传输线+终止传输线+奥品电路中常见问题+调谐放大器)

2024-8-6&#xff0c;星期二&#xff0c;22:57&#xff0c;天气&#xff1a;晴&#xff0c;心情&#xff1a;晴。下班抽出点时间看看书&#xff0c;话不多说&#xff0c;学习开始啦。 今日继续学习模电自选教材的第六章&#xff0c;多级放大器、RF放大器和功率放大器。主要学习…

C++ 几何算法 - 向量点乘,叉乘及其应用

一&#xff1a;点乘介绍 1. 向量点乘&#xff1a; 2. 向量点乘的性质&#xff1a; 3. 向量点乘公式&#xff1a; 4. 向量的点乘的属性&#xff1a; &#xff08;1&#xff09;&#xff1a;向量与自身做点乘&#xff0c;会得到向量长度的平方&#xff1a; &#xff08;2&#xf…

excel中有些以文本格式存储的数值如何批量转换为数字

一、背景 1.1 文本格式存储的数值特点 在平时工作中有时候会从别地方导出来表格&#xff0c;表格中有些数值是以文本格式存储的&#xff08;特点&#xff1a;单元格的左上角有个绿色的小标&#xff09;。 1.2 文本格式存储的数值在排序时不符合预期 当我们需要进行排序的时候…

Nginx自动安装配置脚本

一、Nginx介绍 Nginx 是一个流行的开源 Web 服务器软件。它最初由 Igor Sysoev 开发&#xff0c;并于 2004 年首次发布。 Nginx的 目标是提供高性能、高可靠性和低内存消耗的 Web服务器&#xff0c;同时也可以用作反向代理服务器和负载均衡器。 Nginx 以其优越的性能和高度可…

《学会 SpringMVC 系列 · 参数解析器 ArgumentResolvers》

&#x1f4e2; 大家好&#xff0c;我是 【战神刘玉栋】&#xff0c;有10多年的研发经验&#xff0c;致力于前后端技术栈的知识沉淀和传播。 &#x1f497; &#x1f33b; CSDN入驻不久&#xff0c;希望大家多多支持&#xff0c;后续会继续提升文章质量&#xff0c;绝不滥竽充数…

前端八股速通(持续更新中...)

1、深拷贝和浅拷贝的区别 浅拷贝&#xff1a;浅拷贝是拷贝一层&#xff0c;引用类型共享地址。 如果属性是基本类型&#xff0c;拷贝的就是基本类型的值。 如果属性是引用类型&#xff0c;拷贝的就是内存地址。 意思是&#xff0c;当进行浅拷贝时&#xff0c;对于对象的每一…

(19)SSM-MyBatis

环境配置 第一步创建一个web工程 导入mybatis包、lombok包、jdbc包 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.16</version></dependency><!-- https://mvnrepo…

C#初级——字典Dictionary

字典 字典是C#中的一种集合&#xff0c;它存储键值对&#xff0c;并且每个键与一个值相关联。 创建字典 Dictionary<键的类型, 值的类型> 字典名字 new Dictionary<键的类型, 值的类型>(); Dictionary<int, string> dicStudent new Dictionary<int, str…