Python下一代包管理工具链

官网:Astral: High-performance Python tooling

github: GitHub - astral-sh/uv: An extremely fast Python package and project manager, written in Rust. · GitHub

特点:

一个单一的工具来取代pip、pip工具、pipx、诗歌、pyenv、麻绳、virtualenv等。

比pip快10-100倍。

通过通用锁文件提供全面的项目管理。

运行脚本,支持内联依赖元数据。

安装和管理Python版本。

运行并安装作为Python包发布的工具。

包括一个pip兼容接口,可通过熟悉的CLI提高性能。

支持可扩展项目的Cargo风格工作区。

磁盘空间效率高,具有用于依赖关系重复数据消除的全局缓存。

无需Rust或Python即可通过curl或pip安装。

支持macOS、Linux和Windows。

安装:

nstall uv with our standalone installers:

# On macOS and Linux.
curl -LsSf https://astral.sh/uv/install.sh | sh
# On Windows.
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Or, from PyPI:

# With pip.
pip install uv
# Or pipx.
pipx install uv
If installed via the standalone installer, uv can update itself to the latest version:

uv self update

安装uv网络失败解决方案

使用

新建文件夹uv_test

这里使用VS CODE打开

创建虚拟环境

uv venv

激活虚拟环境

注意:如果开发工具装有python插件,可以自动识别

虚拟环境安装好以后,就可以尝试安装工具包了

uv pip install flask

导出虚拟环境依赖软件包版本到requirements.txt

uv pip freeze > requirements.txt

参考:

uv 是 Astral 团队推出的Rust 编写、极速 Python 包 / 环境管理器,兼容 pip/venv 工作流,安装快 8–100 倍、自带虚拟环境、依赖解析强、缓存高效。  

一、安装(3 种方式)

     1.1 pip 安装(通用) 

pip install uv


     1.2 官方脚本(推荐,自动配置 PATH)

      Linux/macOS:

curl -LsSf https://astral.sh/uv/install.sh | sh


     Windows(PowerShell):

  

powershell -c "irm https://astral.sh/uv/install.ps1 | iex"


     1.3 验证安装

uv --version


       二、核心命令(项目 + 环境管理) 2.1 新项目初始化(一键创建)

# 创建项目+pyproject.toml+.venv
uv init myproject
cd myproject

# 或在已有目录初始化
uv init


     2.2 虚拟环境管理(内置,无需 venv)

# 创建 .venv(自动)
uv venv

# 激活(Windows)
.venv\Scripts\activate

# 激活(macOS/Linux)
source .venv/bin/activate

# 查看环境路径
uv venv --path


     2.3 依赖安装 / 移除

# 安装最新版
uv add requests

# 安装指定版本
uv add "requests==2.31.0"

# 从 requirements.txt 安装
uv add -r requirements.txt

# 移除依赖
uv remove requests

# 同步 pyproject.toml 到环境(常用)
uv sync


     2.4 依赖锁定与导出

# 生成 uv.lock(精确版本锁定)
uv lock

# 导出为 requirements.txt(兼容旧工具)
uv export -o requirements.txt


     2.5 运行脚本 / 命令(带依赖)

# 运行当前环境脚本
uv run main.py

# 临时带依赖运行(无需安装到环境)
uv run --with rich script.py

# 运行任意命令(如 pytest)
uv run pytest


     2.6 缓存管理(提速关键) bash   # 查看缓存路径

# 查看缓存路径
uv cache dir

# 清理缓存(释放空间)
uv cache clean

# 清理指定包缓存
uv cache clean requests


       三、常用场景速查

3.1 替换 pip 日常操作

需求 pip 命令 uv 等价命令
安装包 pip install x uv add x
卸载包 pip uninstall x uv remove x
安装依赖文件 pip install -r req.txt uv add -r req.txt
查看依赖树 pip show --tree x uv pip show --tree x

 3.2 项目迁移(pip → uv)

  • 进入项目目录
  • uv init(生成 pyproject.toml)
  • uv add -r requirements.txt(导入依赖)
  • uv sync(创建环境并安装)

 3.3 全局工具管理(替代 pipx)

# 安装全局工具(如 ruff)
uv tool install ruff

# 运行全局工具
uvx ruff check .

# 升级/卸载
uv tool upgrade ruff
uv tool uninstall ruff


       四、关键特性(为什么选 uv)

  • 极速:Rust 底层,并行下载 + 缓存,大型项目秒级安装
  • 一体化:包管理 + 虚拟环境 + 工具管理,无需 pip+venv+pipx
  • 兼容:完全兼容 pyproject.toml、requirements.txt、venv。
  • 可靠:严格依赖锁定(uv.lock),彻底解决 “依赖地狱”

        五、常见问题

        5.1 与 pip 混用

        uv 安装的包对 pip 可见,可互相操作;但建议统一用 uv避免冲突。

        5.2 虚拟环境位置

        默认在项目下 .venv;可通过 UV_VENV 环境变量自定义路径。

        5.3 网络慢 / 安装失败 

        # 使用国内镜像(如清华)

        uv add requests --index-url  https://pypi.tuna.tsinghua.edu.cn/simple
       六、官方资源

更多推荐