Rye一个强大的Python包管理工具

这是一个由Flask框架作者用rust开发并维护的一个python包管理工具,经过个人体验和使用还是非常不错的,尽管它还并非正式版本,但其易用性和便捷性均值得我们来体验!

其中他对python各版本的管理比其他同类工具要好,安装rye可以不用提前再去安装python,当你项目用到那个版本时再去安装对应的版本即可!

并且可以用虚拟环境来管理项目,而且默认创建的虚拟环境就在项目根目录,既可以使用rye默认命令来管理虚拟环境,还支持通过pip来安装包!

安装

当前仅对Windows系统下的安装方法做一个基本的演示,其他系统请参考其官方文档!

官方文档:Rye (astral.sh)

  1. 下载安装包,进到官网首页根据自己的系统下载对应的版本!

image-20240602091950866.png

  1. 双击运行下载好的安装包,根据提示选择

image-20240602111312116.png

输入y之后提示你选择首选安装包程序,我们这里选择pip-tools

image-20240602111600742.png

这里询问你是用rye管理python还是使用电脑自己已经安装的python,这里我们选择使用rye管理python,下来就会提示你安装一个最新的python版本到rye当中!

image-20240602111932563.png

  1. 配置环境变量

image-20240602095608610.png

按住win+r键回车进入,如上图所示添加环境变量%USERPROFILE%\.rye\shims到Path环境变量的最顶部!

到这里基本上安装就完成了,其他一些细枝末节的东西大家再去参考官方文档即可!

使用

  1. 初始化项目
rye init mysite

image-20240602115107179.png

他会创建出这样的一个目录结构,src就是源码目录,这里只需要特别强调的是.python-version这个里边记录的是该项目使用的python版本。还需要特别注意的是pyproject.toml这里记录的就是项目的具体配置信息!

  1. 同步

这个命令只在第一次运行项目时使用,如果没有安装对应的python版本,则会自动在.python-version中读取版本号下载安装python到rye的目录中!

cd mysite
rye sync
  1. 安装依赖
rye add pillow

其他相关命令请参考官方文档!

命令

以下是 rye 提供的所有命令的列表:

  • add:将 Python 包添加到此项目
  • build:构建用于分发的包
  • config:读取或更新 Rye 配置
  • fetch:获取本地计算机(别名)的 Python 解释器
  • fmt:在项目上运行代码格式化程序
  • init:初始化一个新项目
  • install:安装全局工具(别名)
  • lock:在不安装依赖项的情况下更新锁定文件
  • lint:在项目上运行 lint
  • make-req:从零件构建和打印 PEP 508 需求字符串
  • pin:将 Python 版本固定到项目
  • publish:将包发布到包存储库
  • remove:从此项目中删除依赖项
  • run:运行安装到此包中的命令
  • show:打印项目的当前状态
  • sync:根据 pyproject.toml 更新 virtualenv
  • test:运行项目的测试
  • toolchain:用于管理 Python 工具链的帮助工具
  • tools:用于管理全局工具的帮助程序实用程序。
  • self:rye自我管理
  • uninstall:卸载全局工具(别名)
  • version:获取或设置项目版本

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/677307.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Cognita:一款面向生产环境的开源、模块化 RAG 框架

一、引言:RAG 技术的兴起和挑战 1.1、从关键词搜索到 RAG 在大模型技术火起来之前,我们处理海量数据中的信息检索问题,往往依靠的是传统的关键词搜索和全文检索方法。这些方法虽然在一定程度上帮助我们找到了信息,但它们在语义理…

SpringBoot——全局异常处理

目录 异常 项目总结 新建一个SpringBoot项目 pom.xml Result(通用的响应结果类) MyBusinessException自定义异常类 GlobalExceptionHandler全局异常处理类 ExceptionController控制器 SpringbootExceptionApplication启动类 参考文章&#xff1a…

【计算机-ARM】

计算机-ARM ■ 指令集■ 1. RISC■ 2. CISC ■ ARM简介■ 1.■ 2. ■ ARM-CPU体系架构■ 1. M0■ 2. M3■ 3. M4■ 4. M7■ 5. M7■ 6. M7 ■ ARM-寄存器■ 1. 通用寄存器■ 2.■ 3.■ 4. ■ ARM-工作模式■ ARM-寄存器组■ ARM-异常向量表■ 由于soc0x00000000 是存放IROM芯片…

基于.NetCore和ABP.VNext的项目实战七:全局异常处理并日志记录

ABP框架已经默认为我们实现了全局的异常模块,这里我们自定义全局异常模块,先在HelloWorldController中写一个异常接口,测试下ABP的默认全局异常: [HttpGet][Route("Exception")]public string Exception(){throw new NotImplementedException("这是一个未实…

常用技巧-PPT时你真的做对了吗?

常用技巧-PPT时你真的做对了吗? PPT时通常会通过多种表现手法将信息转化为图表,更好的凸显自己的专业素养。将数据转化为图表是对的,那么你真的用对了图表了吗? 话不多说,直接上干货: 时间线图 时间线是…

Jmeter实战教程入门讲解

前言 通过前面对Jmeter元件的讲解,大家应该都知道常用元件的作用和使用了。编写Jmeter脚本前我们需要知道Jmeter元件的执行顺序,可以看看我这篇性能测试学习之路(三)—初识Jmeter来了解下。下面我将以工作中的一个简单的实例带大…

突破性技术: 大语言模型LLM量化激活outliers异常值抑制

LLM过去有两种突破性技术大大提升了量化精度,分别是group-wise量化和GPTQ/AWQ量化。前者相比于过去的per-tensor和per-channel/per-axis量化提出了更细粒度的对channel拆分为更小单元的量化方式,后者通过巧妙的算法明显提升了4bit量化的精度。 LLM量化存…

【面试八股总结】MySQL索引(二):B+树数据结构、索引使用场景、索引优化、索引失效

参考资料:小林coding、阿秀 一、为什么InnoDB采用B树作为索引数据结构? B 树是一个自平衡多路搜索树,每一个节点最多可以包括 M 个子节点,M 称为 B 树的阶,所以 B 树就是一个多叉树。 B 树与 B 树的差异:…

【UE5 刺客信条动态地面复刻】实现无界地面01:动态生成

为了快速上手UE5,开启了《复刻刺客信条动态地面》的技术篇章,最终希望复刻刺客信条等待界面的效果,这个效果大体上包括: 基础的地面随着任务走动消失和出现的基础效果地板的Bloom和竖起的面片辉光效果 既然是新手,&am…

CSS学习笔记之高级教程(五)

23、CSS 媒体查询 - 实例 /* 如果屏幕尺寸超过 600 像素&#xff0c;把 <div> 的字体大小设置为 80 像素 */ media screen and (min-width: 600px) {div.example {font-size: 80px;} }/* 如果屏幕大小为 600px 或更小&#xff0c;把 <div> 的字体大小设置为 30px …

器利而事善——datagrip 的安装以及简单使用

一&#xff0c;安装 下载&#xff1a;直接到官网下载即可&#xff0c; 破解&#xff1a;这是破解连接&#xff1a;https://pan.baidu.com/s/11BgOMp4Z9ddBrXwCVhwBng &#xff0c;提取码&#xff1a;abcd&#xff1b; 下载后&#xff0c;选择倒数第三个文件&#xff0c;打开da…

【ZZULI数据结构实验四】:C语言排序算法大比拼

&#x1f4c3;博客主页&#xff1a; 小镇敲码人 &#x1f49a;代码仓库&#xff0c;欢迎访问 &#x1f680; 欢迎关注&#xff1a;&#x1f44d;点赞 &#x1f442;&#x1f3fd;留言 &#x1f60d;收藏 &#x1f30f; 任尔江湖满血骨&#xff0c;我自踏雪寻梅香。 万千浮云遮碧…

洛谷 P10566 「Daily OI Round 4」Analysis 题解

先弄个 ASCII 码表&#xff1a; 分析 很明显&#xff0c;想要节省时间&#xff0c;就要把这些字符转换成和它们的 ASCII 值最接近的大写字母。 通过 ASCII 码表&#xff0c;很容易就可以发现&#xff1a; ASCII 值与数字最接近的大写字母是 A \texttt A A。ASCII 值与小写…

切片的MBTiles格式和XYZ格式

MBTiles 和XYZ是两种经常使用的切片格式&#xff0c;尤其是各类下载器下载在线地图时经常使用这种格式。 MBTiles 是一种用于存储地图切片&#xff08;tileset&#xff09;的文件格式&#xff0c;通常用于地图的存储和传输。该格式由 Mapbox 开发&#xff0c;旨在简化大规模栅格…

TensorFlow库详解:Python中的深度学习框架

引言 TensorFlow是由Google Brain团队开发的开源机器学习库&#xff0c;用于各种复杂的数学计算&#xff0c;特别是涉及深度学习的计算。它提供了大量工具和资源&#xff0c;用于构建和训练机器学习模型。TensorFlow因其强大的功能和灵活性&#xff0c;在机器学习和深度学习领…

IGraph使用实例——贝尔曼-福特算法(求解单源最短路径)

1 概述 本文中求解最短路径使用的方法是igraph中基于贝尔曼-福特算法&#xff08;Bellman-Ford算法&#xff09;。Bellman-Ford算法是一种用于在加权图中找到从单个源点到所有其他顶点的最短路径的算法。这个算法可以处理包含负权重边的图&#xff0c;但不能处理有负权重循环的…

CTFHUB-技能树-web-web前置技能-HTTP协议全

目录 1.请求方式 2.302跳转 3.Cookie 4.基础认证 5.响应包源码 1.请求方式 curl -v -X http://challenge-3022c877a8dcedeb.sandbox.ctfhub.com:10800/index.php 2.302跳转 参考链接&#xff1a;http://t.csdnimg.cn/aqdNG 301——永久性重定向。该状态码表示请求的资源已…

Springboot vue elementui 前后端分离 事故灾害案例管理系统

源码链接 系统演示:https://pan.baidu.com/s/1hZQ25cpI-B4keFsZdlzimg?pwdgw48

构造,CF862C. Mahmoud and Ehab and the xor

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 Problem - 862C - Codeforces 二、解题报告 1、思路分析 非常松的一道构造题目 我们只需让最终的异或和为x即可 下面给出个人一种构造方式&#xff1a; 先选1~N-3&#xff0c;然后令o (1 << 17) …

树莓集团领航:园区运营新标杆

在当今经济飞速发展的时代&#xff0c;产业园区作为推动地方经济增长、优化产业布局的重要平台&#xff0c;其运营和管理水平至关重要。树莓集团&#xff0c;作为园区运营的政企典范&#xff0c;凭借其专业的运营能力和卓越的服务品质&#xff0c;赢得了业界的广泛赞誉。 树莓…