【最新Python包管理工具UV的介绍和安装】

介绍

uv是一个非常快的 Python 包安装程序和 pip 解析器,用 Rust 编写,设计为pip-tools的直接替代品。

以下是官网给出的UV与其他包管理工具解决依赖(左)和安装包(右)的对比图。

可以看出UV是一个极快的 Python 包解析器和安装程序。

uv的核心产品原则:

  1. 专注于性能。 在上述基准测试中,uv 比没有缓存的 pip 和 pip-tools 快 8-10 倍,在使用热缓存运行时(例如,重新创建虚拟环境或更新依赖项)快 80-115 倍。UV 使用全局模块缓存来避免重新下载和重新构建依赖项,并在支持的文件系统上利用 Copy-on-Write 和硬链接来最大限度地减少磁盘空间使用。
  2. 优化易用。 虽然uv对 Python 打包的未来有着远大的抱负,但 uv 的初始版本集中在支持 uv pip 接口后面的 pip 和 pip-tools API,使其可以被现有项目使用,无需配置。同样,uv 可以用作"仅"解析器(uv pip compile 以锁定依赖项)、"仅"虚拟环境创建器 (uv venv)、"仅"包安装程序 (uv pip sync) 等。它既是统一的,也是模块化的。
  3. 简化的工具链。 uv作为单个静态二进制文件提供,能够替换pip、pip-tools和virtualenv。uv 没有直接的 Python 依赖项,因此您可以将其与 Python 本身分开安装,从而无需管理pip跨多个 Python 版本(例如,pipvs. pip3vs. pip3.7)的安装。

安装

uv支持Linux、Windows和macOS,并且已经针对公共 PyPI 索引进行了大规模测试。

curl

bash 复制代码
curl -LsSf https://astral.sh/uv/install.sh | sh

win

bash 复制代码
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

pip

bash 复制代码
pip install uv

pipx

bash 复制代码
pipx install uv
相关推荐
charlie11451419123 分钟前
嵌入式现代C++教程: 构造函数优化:初始化列表 vs 成员赋值
开发语言·c++·笔记·学习·嵌入式·现代c++
wjs202425 分钟前
Bootstrap5 消息弹窗
开发语言
资生算法程序员_畅想家_剑魔32 分钟前
Kotlin常见技术分享-02-相对于Java 的核心优势-协程
java·开发语言·kotlin
IT=>小脑虎1 小时前
C++零基础衔接进阶知识点【详解版】
开发语言·c++·学习
nbsaas-boot1 小时前
Go vs Java 的三阶段切换路线图
java·开发语言·golang
码农小韩1 小时前
基于Linux的C++学习——指针
linux·开发语言·c++·学习·算法
!chen1 小时前
Error: error:0308010C:digital envelope routines::unsupporte
python
微露清风1 小时前
系统性学习C++-第十九讲-unordered_map 和 unordered_set 的使用
开发语言·c++·学习
BBBBBAAAAAi1 小时前
Claude Code安装记录
开发语言·前端·javascript
毕设源码-钟学长1 小时前
【开题答辩全过程】以 基于Java的慕课点评网站为例,包含答辩的问题和答案
java·开发语言