uv 常用命令与使用技巧

整理 uv 的常用命令、开发技巧与推荐实践,快速上手这个高效的 Python 包管理工具。

阅读时长: 2 分钟
共 836字
作者: eimoon.com

uv 是一个强大的工具,其目标是成为 Python 生态系统中一站式的依赖管理解决方案。它拥有以下主要特点:

  • 极速性能:uv 的设计专注于速度,在安装、解析和管理依赖方面表现出色,通常比 pip 快数倍。
  • 一体化:它集成了虚拟环境管理、包安装、依赖解析和锁文件生成等功能,简化了工作流程。
  • 兼容性:uv 旨在与 pip、virtualenv 和 pip-tools 等现有工具兼容,方便用户过渡。
  • 现代项目管理:支持 pyproject.toml 作为项目配置的中心,并自动生成 uv.lock 文件来精确锁定依赖。

🐍 uv 常用命令与技巧速查笔记

uv 是一个用 Rust 编写的现代 Python 包管理器,目标是替代 pip + venv + pip-tools,速度极快,非常适合本地开发、项目管理。

1. 创建虚拟环境

uv venv
  • 自动创建 .venv/ 目录
  • 等价于 python -m venv .venv,但更快
  • 自动识别系统中最佳 Python 版本

✅ 激活虚拟环境:

  • macOS / Linux:
    source .venv/bin/activate
    
  • Windows:
    .\.venv\Scripts\activate
    

2. 安装依赖(替代 pip install)

uv 提供了一个 uv pip 子命令,其接口与 pip 类似,方便用户从 pip 过渡。

uv pip install requests
  • 安装速度比 pip 快几倍
  • 会自动写入当前虚拟环境

多个包安装:

uv pip install fastapi uvicorn pydantic

3. 安装 requirements.txt 依赖

uv pip install -r requirements.txt
  • 安装整个项目依赖(首次初始化项目时使用)

4. 升级已有依赖包

uv pip install -U numpy

5. 导出当前环境依赖(freeze)

uv pip freeze > requirements.txt
  • 生成所有已安装包的锁定版本(推荐提交到 Git)

6. 查看依赖树

uv pip list --tree
  • 替代 pipdeptree
  • 清晰查看哪个包依赖了谁,方便调试版本冲突

7. 更换 Python 版本(可选)

uv venv --python 3.11
  • 指定 Python 版本创建环境(需要系统已安装)

8. 缓存管理

uv 会缓存下载的包,以提高重复安装的速度。

  • 清理缓存:
uv cache clean
  • 修剪缓存(删除不再需要的条目):
uv cache prune
  • 查看缓存目录:
uv cache dir

9. 其他常用命令与技巧

  • 查看版本:
uv --version
  • 获取帮助:
uv --help
uv add --help
  • 自更新 uv:
uv self update

💡 10. 实用技巧汇总

用法 命令
创建 venv + 安装依赖 uv venv && source .venv/bin/activate && uv pip install -r requirements.txt
冻结依赖 uv pip freeze > requirements.txt
查看当前安装包 uv pip list
清理虚拟环境(手动) rm -rf .venv
速度对比 pip 🚀 快 5~10 倍,特别是依赖多时

📚 官方链接

  • 项目地址:https://github.com/astral-sh/uv
  • 文档手册:https://astral.sh/docs/uv

📬 关注我获取更多资讯

公众号
📢 公众号
个人号
💬 个人号
使用 Hugo 构建
主题 StackJimmy 设计