比 pip 快 100 倍!更现代的 python 包管理工具,替代 pip、venv、poetry!

大家好,我是 MAI麦造!

之前比较喜欢用 anaconda 来管理虚拟环境,但只做包管理又太大材小用了。

现在有一个轻量且更强的替代来了!!

一站式超快的 Python 包与环境管理工具:uv。

作者:Astral(ruff 开发团队) ,口号:"比 pip 快 100 倍"


🧭 一、uv 是什么?

uv 是一个基于 Rust 编写的 Python 包管理器,它集成了以下功能:

工具 功能 在 uv 中的替代
pip 包安装 ✅ uv pip
venv 虚拟环境 ✅ uv venv
poetry 依赖管理 ✅ uv add / uv sync
pip-tools 锁定依赖 ✅ 自动内置

👉 简单理解:

uv = pip + venv + poetry 的极速整合版。


⚙️ 二、安装 uv

bash 复制代码
# linux/MacOS 官方推荐方式(自动检测平台)  
curl -LsSf https://astral.sh/uv/install.sh | sh  
  
# win11 上  
  
winget install uv

或通过 pip:

复制代码
pip install uv

🚀 三、常用命令速查

1️⃣ 创建虚拟环境

复制代码
uv venv

在当前目录下创建 .venv 文件夹。

指定路径:

bash 复制代码
uv venv .envs/myenv

2️⃣ 指定 Python 版本创建虚拟环境

css 复制代码
uv venv --python 3.11

或指定绝对路径:

bash 复制代码
uv venv --python /usr/local/bin/python3.11

💡 提示:uv 会自动下载所需 Python 版本(类似 pyenv 的体验), 无需提前安装该版本的解释器。


3️⃣ 激活虚拟环境

bash 复制代码
# macOS / Linux  
source .venv/bin/activate  
  
# Windows  
.venv\Scripts\activate

4️⃣ 安装依赖

复制代码
uv pip install requests

可一次安装多个:

复制代码
uv pip install numpy pandas matplotlib

5️⃣ 安装依赖文件

复制代码
uv pip install -r requirements.txt

6️⃣ 导出依赖列表

复制代码
uv pip freeze > requirements.txt

7️⃣ 使用 pyproject.toml 管理依赖

csharp 复制代码
uv add fastapi uv remove fastapi uv sync

🔒 uv sync 会根据锁文件精确重建环境。


8️⃣ 一次性运行脚本(自动加载环境)

arduino 复制代码
uv run script.py

9️⃣ 临时安装依赖并运行命令

scss 复制代码
uv run --with requests python -c "import requests; print(requests.__version__)"

在隔离环境中运行,不污染全局依赖。


🔟 初始化项目模板

csharp 复制代码
uv init myproject

自动创建项目结构和 pyproject.toml。


🧩 四、实用命令对照表

功能 命令 说明
创建虚拟环境 uv venv 默认使用当前 Python
指定 Python 版本 uv venv --python 3.11 自动下载版本
安装包 uv pip install <pkg> 兼容 pip
安装文件依赖 uv pip install -r requirements.txt
导出依赖 uv pip freeze > requirements.txt
添加依赖(TOML) uv add <pkg> 类似 poetry
删除依赖 uv remove <pkg>
同步依赖 uv sync 更新虚拟环境
临时运行 uv run --with <pkg> <cmd> 不污染环境
初始化项目 uv init 创建标准项目结构

💡 五、优点总结

✅ 极快安装速度(Rust 实现,比 pip 快 10--100 倍)

✅ 自动管理虚拟环境与依赖锁定✅ 完全兼容 pip✅ 支持多 Python 版本共存与下载✅ 可替代 Poetry、pip-tools、pyenv、pipx 的组合


🔍 六、进阶技巧

✨ 指定 Python 版本运行脚本

css 复制代码
uv run --python 3.10 main.py

✨ 查看所有可用 Python 版本

复制代码
uv python list

✨ 安装特定 Python 版本

复制代码
uv python install 3.12

七、

这是一个常用的 uv 命令速查表。 大家可以 mark 住,需要的时候可以快速找到~

相关推荐
一只爱撸猫的程序猿2 小时前
我看着一个 AI 引擎在 14 天里,从"记忆"走进了"搜索"
人工智能·后端·架构
陈随易5 小时前
纯 Go 写的 JS 引擎,跑分超过了 C 语言的 QuickJS
前端·后端·程序员
卷无止境5 小时前
RAGFlow 项目全景报告:从文档解析引擎到 Agent 原生数据库
后端·python
小Z先生6 小时前
我用 Go + 系统 WebView 写了个纯本地 Postman:不装 Electron、不连云端
后端·github
IT_陈寒6 小时前
Redis连接池泄漏那次,我差点把生产环境搞崩了
前端·人工智能·后端
灿飞屋6 小时前
Kotlin与Java虚拟机三:控制流
android·java·开发语言·后端·python·kotlin·安卓
benchmark_cc7 小时前
单只股票五档盘口接入个人研究仓库:QuantDash 读取、校验与易错点
python·数据分析·pandas·量化交易·股票数据·quantdash
石小石Orz7 小时前
AI 正在蚕食我们的编码能力
前端·后端·算法
陈随易7 小时前
专注飞机 FocusFlight,两个人把番茄钟做成了一趟航班
前端·后端·程序员
量化分析码农7 小时前
【Python量化波动率实战 04】低波动异象:低波组真的跑赢高波组吗
后端