当前位置: 首页 > news >正文

poetry安装与使用

文章目录

  • 安装方法
  • 虚拟环境构建方法
    • * 创建新虚拟环境【新环境使用】
    • * 使用仓库拉取的代码构建虚拟环境【远端仓库拉取使用】
  • 常用命令
  • 注意事项


安装方法

  1. 安装命令(全局安装,不要在虚拟环境中安装,方便后面创建环境使用)

    pip3 install poetry
    
  2. 修改虚拟环境路径(首次使用poetry时执行,修改全局配置文件
    poetry默认虚拟环境创建在系统目录,这里我们修改配置,将默认虚拟环境创建在项目目录

    poetry config virtualenvs.in-project true
    

虚拟环境构建方法

包括两种:

  1. 创建新虚拟环境
  2. 使用仓库拉取的代码构建虚拟环境

* 创建新虚拟环境【新环境使用】

进入项目跟目录,如果项目下有不是poetry创建的env目录,就先删了

  1. 初始化poetry,创建 pyproject.toml 文件(该文件用于记录虚拟环境的相关信息)

    poetry init
    

    一路回车就行(有个作者名称要输一下)

  2. 创建虚拟环境

    poetry env use python3
    

    生成poetry的env目录
    在这里插入图片描述

  3. pycharm配置poetry环境
    在这里插入图片描述


* 使用仓库拉取的代码构建虚拟环境【远端仓库拉取使用】

如果从远端仓库上拉取的代码,需要从 pyproject.toml 中安装第三方依赖包
在这里插入图片描述

  1. 首先创建虚拟环境,参考本文上述 创建新虚拟环境【新环境使用】 中的第2步和第3步,但第1步不要执行,因为别人项目下已经有 pyproject.toml 了,不需要再生成了
  2. 执行命令安装 pyproject.toml 中的依赖
    poetry install
    

常用命令

  • 查看虚拟环境下已安装的所有包
    poetry show
    
  • 安装第三方包
    poetry add 包名
    
  • 安装第三方包(仅在开发环境)
    poetry add 包名 --group dev
    
  • 卸载第三方包
    poetry remove 包名
    
  • 创建虚拟环境
    poetry env use python3
    
  • 删除虚拟环境
    poetry env remove python3
    
  • 查看poetry全局配置文件
    poetry config --list
    
  • 修改全局配置文件
    poetry config 字段名 字段值 
    
  • 进入虚拟环境
    .\.venv\Scripts\activate
    
  • 退出虚拟环境
    deactivate
    
  • 导出 requirements.txt 用于docker部署
    poetry export -f requirements.txt -o requirements.txt --without-hashes
    
    –without-hashes 去掉哈希加密字段,否则线上安装依赖时可能会报错

注意事项

  • 使用 poetry add 安装第三方包的时候,只要在项目根目录下执行命令,不用进到虚拟环境也可以把包安装到虚拟环境中
  • 安装第三方包后会生成一个poetry.lock记录第三方包的依赖关系(这个文件不用管,是由poetry自行管理的依赖)
  • 部署上线时不使用 poetry,一般不在 docker 中使用虚拟环境,而是将 poetry 虚拟环境中的包依赖导出到 requirements.txt,在 Dockerfile 中执行 RUN pip install -r requirements.txt

相关文章:

poetry安装与使用

文章目录 安装方法虚拟环境构建方法* 创建新虚拟环境【新环境使用】* 使用仓库拉取的代码构建虚拟环境【远端仓库拉取使用】 常用命令注意事项 安装方法 安装命令(全局安装,不要在虚拟环境中安装,方便后面创建环境使用) pip3 inst…...

聊聊langchain4j的Code Execution Engine

序 本文主要研究一下langchain4j的Code Execution Engine 步骤 pom.xml <dependency><groupId>dev.langchain4j</groupId><artifactId>langchain4j-code-execution-engine-graalvm-polyglot</artifactId><version>1.0.0-beta2</ver…...

军事级加密通信系统——基于QML的战术地图加密传输

目录 基于QML的战术地图加密传输一、引言二、理论背景与安全需求2.1 战术地图数据的敏感性与安全性要求2.2 QML与PyQt5集成优势2.3 加密算法与数据传输模型三、系统架构与数据流图四、QML前端界面设计与交互功能4.1 QML界面优势与设计理念4.2 功能要求4.3 QML文件示例五、加密传…...

ffmpeg系列(三)—— 音频重采样

SwrContext 一、SwrContext 的重要字段 SwrContext 是音频重采样的核心配置对象&#xff0c;其关键字段决定了重采样的行为和性能。以下是常用字段及其作用&#xff1a; 字段名称类型作用典型值示例in_sample_rateint输入音频的采样率&#xff08;Hz&#xff09;。44100out_…...

android Kotlin原理

目录 一,概述 1.1 kotlin协程序原理: 1.2 核心概念 二,协程调度器之Dispatchers 三,协程能进行线程恢复的原理 一,概述 1.1 kotlin协程序原理: 1,内部线程池管理线程使用到了自旋和挂起 2,传统的线程之所以重,是因为线程的执行&#xff0c;等待唤醒需要操作系统来完成 …...

MyBatis-Plus(Ⅲ)IService详解

目录 一、逐一演示 1.save&#xff08;插入一条&#xff09; 结果 断言&#xff08;引入概念&#xff09; 2.saveBatch&#xff08;批量插入&#xff09; 结果 3.saveOrUpdateBatch&#xff08;批量插入&更新&#xff09; 结果 4.removeById&#xff08;通过id删除…...

2024年认证杯SPSSPRO杯数学建模C题(第二阶段)云中的海盐全过程文档及程序

2024年认证杯SPSSPRO杯数学建模 C题 云中的海盐 原题再现&#xff1a; 巴黎气候协定提出的目标是&#xff1a;在2100年前&#xff0c;把全球平均气温相对于工业革命以前的气温升幅控制在不超过2摄氏度的水平&#xff0c;并为1.5摄氏度而努力。但事实上&#xff0c;许多之前的…...

PostgreSQL 存储过程

简介 PostgreSQL 中的存储过程&#xff08;Stored Procedure&#xff09;是一种在数据库中定义的可重复使用的程序单元&#xff0c;用于封装复杂的业务逻辑和数据处理操作 示例 简单示例 创建存储过程 CREATE PROCEDURE insert_users (user_account TEXT, hashed_password…...

GGUF 和 llama.cpp 是什么关系

这是个非常关键的问题&#xff0c;咱们来细说下&#xff1a;GGUF 和 llama.cpp 是什么关系&#xff0c;它们各自干什么&#xff0c;如何配合工作。 &#x1f527; 一、llama.cpp 是什么&#xff1f; llama.cpp 是 Meta 的开源大语言模型 LLaMA&#xff08;Language Model from…...

(UI自动化测试web端)第二篇:元素定位的方法_class定位

看代码里的【 driver.find_element_by_class_name( )】()里的路径怎么写&#xff1f; 那我们现在说的就是在元素定位时&#xff0c;根据网页的实际情况来选择适合的元素定位的写法。文章主要介绍了class定位在正常工作当中的使用。 第三种定位 方式&#xff1a;class定位 ⽅法…...

闲聊IT - 面向服务架构(SOA)的发展历史

SOA的发展历史 面向服务架构&#xff08;SOA&#xff09;是随着企业信息化进程的发展逐渐形成的&#xff0c;它的出现是为了应对传统软件架构在现代企业复杂需求面前的局限性。SOA的起源和发展过程可以追溯到20世纪90年代末期&#xff0c;并随着互联网技术的普及、分布式计算以…...

31天Python入门——第9天:再学函数

你好&#xff0c;我是安然无虞。 文章目录 再学函数1. 变量在函数中的作用域2. 函数的参数传递.补充学习: 不定长参数*args和**kwargs 3. 值传递和引用传递补充学习: 把函数作为参数传递 4. 匿名函数5. python中内置的常用函数zip()map()filter()all()any() 6. 函数练习 再学函…...

卡特兰数在数据结构上面的运用

原理 Catalan数是一个数列&#xff0c;其第n项表示n个不同结点可以构成的二叉排序树的数量。Catalan数的第n项公式为&#xff1a; &#xfffc; 其中&#xff0c;&#xfffc;是组合数&#xff0c;表示从2n个元素中选择n个元素的组合数。 Catalan数的原理可以通过以下方式理解&…...

如何分析和解决服务器的僵尸进程问题

### 如何分析和解决服务器的僵尸进程问题 #### **一、僵尸进程的定义与影响** **僵尸进程&#xff08;Zombie Process&#xff09;** 是已终止但未被父进程回收资源的进程。其特点&#xff1a; - **状态标识**&#xff1a;在进程列表&#xff08;如 ps 或 top&#xff09;中标…...

Kafka分区分配策略详解

Kafka分区分配策略详解 Kafka作为当前最流行的分布式消息队列系统&#xff0c;其分区分配策略直接影响着系统的性能、可靠性和可扩展性。合理的分区分配不仅能够提高数据处理的效率&#xff0c;还能确保系统负载的均衡。 Kafka提供了多种内置的分区分配策略&#xff0c;包括R…...

Vs code搭建uniapp-vue项目

安装vue环境npm install -g vue/clinode版本建议18或者18以上 vue create -p dcloudio/uni-preset-vue 项目名称----正式版vue create -p dcloudio/uni-preset-vue#alpha 项目名称----alpha版Vue3/Vite版 npx degit dcloudio/uni-preset-vue#vite 项目名称---js-正式版npx degi…...

cursor常用快捷键(JetBrains Darcula主题风格)

一、基础操作速查 打开/创建项目 打开项目&#xff1a;Ctrl Shift O&#xff08;选择文件夹&#xff09;新建文件&#xff1a;Ctrl N保存文件&#xff1a;Ctrl S关闭当前标签页&#xff1a;Ctrl F4 代码编辑 复制当前行&#xff1a;Ctrl D删除当前行&#xff1a;Ctrl …...

easyExcel2.2.10中为0数据显示为空

在 EasyExcel 2.2.10 中&#xff0c;如果希望将数值为 0 的数据在 Excel 中显示为空&#xff08;即不显示 0&#xff09;&#xff0c;可以通过以下方法实现&#xff1a; 1. 使用 ExcelProperty 的 format 参数 通过设置单元格格式为 #&#xff08;# 会忽略 0&#xff09;&…...

Walrus 经济模型 101

本文作者&#xff1a;Steve_4P&#xff0c;文章仅代表作者观点。 要点总结 2025 年 3 月 20 日&#xff0c;Walrus 基金会宣布成功融资 约 1.4 亿美元&#xff0c;投资方包括 Standard Crypto、a16z 等机构。Walrus 当前估值约 20 亿美元&#xff0c;其中 7% 代币供应量分配给…...

WordPress二次开发中常用到的一些变量和函数

WordPress是一个开源的博客软件平台&#xff0c;由于其强大的功能和灵活性&#xff0c;被广泛用于各种网站的建设。对于开发者来说&#xff0c;了解并掌握WordPress中的常用变量和函数是非常重要的。在WordPress二次开发中&#xff0c;以下是一些常用的变量和函数&#xff1a; …...

【视频】OpenCV:色彩空间转换、灰度转伪彩

1、颜色空间转换 使用OpenCV的函数 cv::applyColorMap 可以将灰度或者正常的RGB格式图片,转换成其它伪彩色,代码很简单: 1)使用 cv::imread 加载图片; 2)使用 std::vector<cv::Mat> matrices 暂存转换后的所有图像; 3)使用 cv::applyColorMap 转换图片颜色; 4)…...

淘宝历史价格数据获取指南:API 与爬虫方案的合法性与效率对比

引言 在淘宝平台的购物生态中&#xff0c;消费者希望通过了解商品历史价格来判断当前价格是否实惠&#xff0c;商家也需要借助历史价格数据制定合理的营销策略、分析市场趋势。获取淘宝商品历史价格数据主要有 API 和爬虫两种方案&#xff0c;它们在合法性与效率上存在显著差异…...

【Redis】高性能内存数据库的多场景应用

在现代互联网应用的开发版图中&#xff0c;Redis 凭借其卓越的性能和丰富的数据结构&#xff0c;成为了众多开发者不可或缺的技术利器。作为一款基于内存的高性能数据库&#xff0c;Redis 不仅能提供快速的数据读写操作&#xff0c;还能在多种复杂的应用场景中发挥关键作用。本…...

Pycharm社区版创建Flask项目详解

一、创建工程项目 二、配置工程目录 新建的空项目下创建目录。 1、新建app.py文件 2、app.py代码如下&#xff1a; from flask import Flask, render_templateapp Flask(__name__)app.route("/") def root():"""主页:return: Index.html"&qu…...

鸿蒙NEXT开发案例:程序员计算器

【环境准备】 • 操作系统&#xff1a;Windows 10 • 开发工具&#xff1a;DevEco Studio 5.0.1 Release Build Version: 5.0.5.306 • 目标设备&#xff1a;华为Mate60 Pro • 开发语言&#xff1a;ArkTS • 框架&#xff1a;ArkUI • API版本&#xff1a;API 13 【项目…...

TCP 三次握手与四次挥手过程

TCP 作为一种面向连接的、可靠的传输层协议&#xff0c;其连接管理机制对于保障数据的可靠传输至关重要。 三次握手&#xff08;建立连接&#xff09; 三次握手是 TCP 建立连接时所采用的机制&#xff0c;其目的在于确保客户端和服务器双方都具备发送和接收数据的能力&#x…...

仿新浪微博typecho主题源码

源码介绍 仿新浪微博typecho主题源码&#xff0c;简约美观&#xff0c;适合做个人博客&#xff0c;该源码为主题模板&#xff0c;需要先搭建typecho&#xff0c;然后吧源码放到对应的模板目录下&#xff0c;后台启用即可 源码特点 支持自适应 个性化程度高 可设置背景图、顶…...

python面试高频考点(深度学习大模型方向)

1. python中yeild和return的区别&#xff1f; 2. 介绍一下pytohn中的上下文管理器&#xff1f; 在Python中&#xff0c;上下文管理器&#xff08;Context Manager&#xff09; 是一种通过 with 语句管理资源的协议&#xff0c;确保资源&#xff08;如文件、数据库连接、线程锁…...

【网络层协议】NAT技术内网穿透

IP地址数量限制 我们知道&#xff0c;IP地址&#xff08;IPv4&#xff09;是一个4字节32位的整数&#xff0c;那么一共只有2^32也就是接近43亿个IP地址&#xff0c;而TCP/IP协议栈规定&#xff0c;每台主机只能有一个IP地址&#xff0c;这就意味着&#xff0c;一共只有不到43亿…...

【数据分享】2000—2024年我国省市县三级逐年归一化植被指数(NDVI)数据(年平均值/Shp/Excel格式)

之前我们分享过2000-2024年我国逐年的归一化植被指数&#xff08;NDVI&#xff09;栅格数据&#xff0c;该逐年数据是取的当年月归一化植被指数&#xff08;NDVI&#xff09;的年平均值。&#xff01;该数据来源于NASA定期发布的MOD13A3数据集&#xff01;很多小伙伴拿到数据后…...

鸿蒙harmonyOS:笔记 正则表达式

从给出的文本中&#xff0c;按照既定的相关规则&#xff0c;匹配出符合的数据&#xff0c;其中的规则就是正则表达式&#xff0c;使用正则表达式&#xff0c;可以使得我们用简洁的代码就能实现一定复杂的逻辑&#xff0c;比如判断一个邮箱账号是否符合正常的邮箱账号&#xff0…...

centos7.9镜像源及Python引入ssl问题处理

一、镜像源修改 1. 备份原有的镜像源配置文件 在修改之前,先备份现有的 CentOS-Base.repo 文件: sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2. 编辑镜像源配置文件 使用文本编辑器(如 nano 或 vi)打开 /etc/yum.repos.d/Ce…...

【学Rust写CAD】11 2D CAD可用rust库

使用 Rust 开发 2D CAD 应用时&#xff0c;选择合适的库是关键。以下是一些适合用于 2D CAD 开发的 Rust 库和工具&#xff0c;涵盖图形渲染、几何计算、用户界面等方面&#xff1a; 图形渲染 lyon 简介: lyon 是一个用于 2D 图形渲染的 Rust 库&#xff0c;支持路径填充、描边…...

C#中值类型与引用类型是直观使用示例

一、值类型与引用类型区分 正确理解值类型与引用类型&#xff0c;可以更好的帮助软件开发人员写出性能更好且正确稳定运行的程序&#xff1a; C#值类型与引用类型区别 区别值类型引用类型定义所有继承自【System.ValueType】类型的都是值类型&#xff08;valueType继承自Syste…...

Spring Cloud之负载均衡之LoadBalance

目录 负载均衡 问题 步骤 现象 什么是负载均衡&#xff1f; 负载均衡的一些实现 服务端负载均衡 客户端负载均衡 使用Spring Cloud LoadBalance实现负载均衡 负载均衡策略 ​编辑 ​编辑LoadBalancer原理 服务部署 准备环境和数据 服务构建打包 启动服务 上传J…...

MySQL的数据文件

MySQL的数据文件 mysql的数据都存放在datadir所指的位置&#xff0c;其中包含了mysql中创建的数据库&#xff0c;数据库中包含了表结构(frm文件)、表数据(myd文件)、表索引(myi文件) show variables like %datadir%.frm 存放和表相关的数据信息&#xff0c;主要包括表结构的定…...

【RabbitMQ高级特性】消息确认机制、持久化、发送方确认、TTL和死信队列

&#x1f525;个人主页&#xff1a; 中草药 &#x1f525;专栏&#xff1a;【中间件】企业级中间件剖析 一、消息确认机制 消费者确认机制确保消息被正确处理后才从队列中删除。如果消费者处理失败&#xff08;如业务异常或宕机&#xff09;&#xff0c;Broker 会重新投递消息…...

C# 正则表达式

C# 正则表达式 引言 正则表达式&#xff08;Regular Expression&#xff0c;简称Regex&#xff09;是一种用于处理字符串的强大工具&#xff0c;在编程领域有着广泛的应用。C# 作为一种流行的编程语言&#xff0c;也内置了对正则表达式的支持。本文将详细介绍 C# 中的正则表达…...

第十四届蓝桥杯省赛电子类单片机学习记录(客观题)

01.一个8位的DAC转换器&#xff0c;供电电压为3.3V&#xff0c;参考电压2.4V&#xff0c;其ILSB产生的输出电压增量是&#xff08;D&#xff09;V。 A. 0.0129 B. 0.0047 C. 0.0064 D. 0.0094 解析&#xff1a; ILSB&#xff08;最低有效位&#xff09;的电压增量计算公式…...

23种设计模式-桥接(Bridge)设计模式

桥接设计模式 &#x1f6a9;什么是桥接设计模式&#xff1f;&#x1f6a9;桥接设计模式的特点&#x1f6a9;桥接设计模式的结构&#x1f6a9;桥接设计模式的优缺点&#x1f6a9;桥接设计模式的Java实现&#x1f6a9;代码总结&#x1f6a9;总结 &#x1f6a9;什么是桥接设计模式…...

AI重塑视觉艺术:DeepSeek与蓝耘通义万相2.1的图生视频奇迹

云边有个稻草人-CSDN博客 近年来&#xff0c;深度学习、计算机视觉和生成模型在多个领域取得了突破性进展。其中&#xff0c;DeepSeek与蓝耘通义万相2.1图生视频的结合为图像生成与视频生成技术提供了新的发展方向。DeepSeek作为一个图像和视频生成的工具&#xff0c;能够利用深…...

mac怎么安装pycharm?

安装步骤&#xff1a;1、打开PyCharm官网&#xff0c;在官网首页点击“下载”按钮&#xff0c;选择“MacOS”版本进行下载&#xff1b;2、双击打开安装包&#xff0c;将PyCharm拖动到应用程序文件夹中&#xff1b;3、根据提示进行安装&#xff0c;在第一次运行PyCharm时&#x…...

HTML应用指南:利用POST请求获取城市肯德基门店位置信息

随着新零售业态的快速发展&#xff0c;门店位置信息的获取变得越来越重要。作为快餐服务行业的先锋&#xff0c;肯德基不仅在服务质量上持续领先&#xff0c;还积极构建广泛的门店网络&#xff0c;以支持其不断增长的用户群体。为了更好地理解和利用这些数据&#xff0c;本篇文…...

Java主流开发框架之请求响应常用注释

1.RestController 标记一个类为 REST 控制器&#xff0c;处理 HTTP 请求并直接返回数据&#xff08;如 JSON/XML&#xff09;&#xff0c;而不是视图&#xff08;如 HTML&#xff09;&#xff0c;一般是放在类的上边 RestController public class UserController {GetMapping…...

go的参数传递都是值传递,但切片需要注意

根据之前学习python和java的经验&#xff0c;每次学习一门新语言时&#xff0c;一定要搞清楚方法的参数传递是值传递&#xff0c;引用传递还是指针传递。 主要原因就是需要知道&#xff0c;某种类型的数据传递给某个方法后&#xff0c;方法里面对它的修改是否会影响到这个数据本…...

C++菜鸟教程 - 从入门到精通 第五节

一.各种排序 接下来,让我们开始学习排序! 1.选择排序 a.原理简介 选择排序&#xff08;Selection Sort&#xff09;是一种简单直观的排序算法。它的基本思想是每次从未排序的部分中选择最小&#xff08;或最大&#xff09;的元素&#xff0c;将其放到已排序部分的末尾&#xff…...

同一个局域网的话 如何访问另一台电脑的ip

在局域网内访问另一台电脑&#xff0c;可以通过以下几种常见的方法来实现&#xff1a; ‌直接通过IP地址访问‌&#xff1a; 首先&#xff0c;确保两台电脑都连接在同一个局域网内。获取目标电脑的IP地址&#xff0c;这可以通过在目标电脑上打开命令提示符&#xff08;Windows系…...

[学习笔记]攻防世界-bug

打开场景&#xff0c;提示我们需要登陆 我们先注册一下 注册成功 我们登陆进去 我们点击Manage他提示我们admin才能进入 我们刷新抓包一下试试 Cookie里面除了PHPSESSID&#xff0c;多出来了一个user&#xff0c;看上去是md5加密的&#xff0c;我们尝试解密 这里尝试了好几个网…...

[250324] Kafka 4.0.0 版本发布:告别 ZooKeeper,拥抱 KRaft!| Wine 10.4 发布!

目录 Kafka 4.0.0 版本发布&#xff1a;告别 ZooKeeper&#xff0c;拥抱 KRaft&#xff01;Wine 10.4 发布&#xff01; Kafka 4.0.0 版本发布&#xff1a;告别 ZooKeeper&#xff0c;拥抱 KRaft&#xff01; 近日&#xff0c;Apache Kafka 4.0.0 正式发布&#xff01;这是一个…...

【赵渝强老师】达梦数据库MPP集群的架构

为了支持海量数据存储和处理等方面的需求&#xff0c;为高端数据仓库提供解决方案&#xff0c;达梦数据库提供了大规模并行处理MPP架构&#xff0c;以极低的成本代价&#xff0c;提供高性能的并行计算。通过使用MPP可以解决以下问题&#xff1a; 需要较高的系统性能支持以支持…...