超快Python包管理器uv:极速安装新选择

🚀 uv:一个非常好用且超快的 Python包管理器与环境管理器

更新时间 :2025年12月19日
适用人群:Python 开发者、数据科学家、运维工程师、全栈开发者


🌟 什么是 uv

uv 是由 Astral 团队(Python 社区知名贡献者)开发的一款超高速 Python 包管理器与环境管理器

它基于 Rust 编写,性能远超传统的 pippoetrypipenv 等工具。
uv 不仅能安装包,还能:

  • 快速解析依赖(秒级)
  • 管理虚拟环境(uv venv
  • 运行 Python 脚本(uv run
  • 管理 pyproject.toml 配置
  • 支持 --native-tls--trusted-host 等高级网络选项

⚡ 为什么选择 uv

特性 uv 传统工具(pip/poetry)
安装速度 ⚡️ 极快(10~100倍) 慢(尤其复杂依赖)
依赖解析 高效,支持增量解析 常卡顿,解析慢
虚拟环境管理 内置支持,超快创建 需额外命令或配置
pyproject.toml 兼容 ✅ 完全支持 ✅ 支持,但部分工具版本滞后
网络安全 支持 --native-tls,使用系统证书 依赖系统,易出证书问题

结论 :如果你追求极致效率现代化工作流uv 是当前最值得投入的 Python 包管理工具。


🛠️ 安装 uv

✅ 方法一:使用官方脚本(推荐)

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

# Windows(PowerShell)
Invoke-WebRequest -UseBasicParsing https://astral.sh/uv/install.ps1 | Invoke-Expression

📌 安装后,将 ~/.local/bin(Linux/macOS)或 %USERPROFILE%\.local\bin(Windows)加入 PATH

✅ 方法二:使用包管理器

  • Homebrew (macOS)

    bash 复制代码
    brew install uv
  • apt (Ubuntu/Debian)

    bash 复制代码
    sudo apt install uv
  • Chocolatey (Windows)

    bash 复制代码
    choco install uv
  • Winget(Windows)

    bash 复制代码
    winget install uv

安装完成后,验证安装是否成功

uv --version

📦 基础使用指南

1. 安装 Python 包(替代 pip install

bash 复制代码
# 查看可用的python版本
uv python list

# 安装特定python版本
uv python install 3.11.6

# 设置全局默认python版本
uv python default 3.12

# 安装 requests
uv pip install requests

# 安装多个包
uv pip install requests flask pandas

# 安装指定版本
uv pip install requests==2.31.0

# 安装开发依赖(如 pytest)
uv pip install -e .[dev]

💡 提示uv pip install 会自动创建虚拟环境(除非你显式使用 --no-venv)。


2. 使用国内镜像源(解决 SSL/网络问题)

bash 复制代码
# 使用清华镜像源(推荐)
uv pip install requests \
  -i https://pypi.tuna.tsinghua.edu.cn/simple/ \
  --trusted-host pypi.tuna.tsinghua.edu.cn \
  --native-tls

为什么需要 --native-tls

因为 uv 默认使用内部 TLS 实现,可能无法识别某些系统 CA 证书(如国内镜像源)。

启用 --native-tls 后,uv 会使用操作系统原生 TLS 库,完美兼容系统证书。


3. 创建和管理虚拟环境

bash 复制代码
# 创建虚拟环境(自动激活)
uv venv

# 指定路径创建
uv venv ./myenv

# 激活虚拟环境(Linux/macOS)
source myenv/bin/activate

# 激活虚拟环境(Windows)
myenv\Scripts\activate

# 退出虚拟环境
deactivate

🌟 亮点uv venvpython -m venv 快 5~10 倍。


4. 运行 Python 脚本(替代 python script.py

bash 复制代码
# 运行脚本,自动使用虚拟环境
uv run script.py

# 运行带有依赖的脚本
uv run -m mymodule

# 运行 Jupyter Notebook
uv run jupyter notebook

💡 优势:无需手动激活虚拟环境,命令自动识别依赖并运行。


5. 管理 pyproject.toml(现代 Python 项目配置)

toml 复制代码
# pyproject.toml
[build-system]
requires = ["setuptools>=45", "wheel"]
build-backend = "setuptools.build_meta"

[project]
name = "myproject"
version = "0.1.0"
description = "A sample project"
dependencies = [
    "requests>=2.25.0",
    "click>=8.0.0"
]

[project.optional-dependencies]
dev = [
    "pytest>=6.0.0",
    "black",
    "flake8"
]

# uv sync 如果安装太慢,可以设置国内镜像源 https://pypi.tuna.tsinghua.edu.cn/simple
[tool.uv]
index-url = "https://pypi.tuna.tsinghua.edu.cn/simple"
使用 uv 管理依赖:
bash 复制代码
# 安装所有依赖(包括 dev)
uv pip install -e .[dev]

# 安装运行依赖
uv pip install -e .

# 仅安装 dev 依赖
uv pip install -e .[dev]

🚩项目管理

uv 支持 pyproject.toml 格式的项目管理,这是现代 Python 项目的标准配置文件

初始化一个新项目

uv init my_project

cd my_project

这会创建基本的项目结构和 pyproject.toml 文件。
安装项目的依赖

uv sync

这个命令会根据 pyproject.toml 和 requirements.txt 安装所有依赖,类似于 pip install -e . 但更高效


🌍 高级技巧与最佳实践

场景 建议命令
使用华为镜像(需信任) uv pip install requests -i https://mirrors.tools.huawei.com/pypi/simple/ --trusted-host mirrors.tools.huawei.com --native-tls
使用阿里云镜像 uv pip install requests -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com --native-tls
临时禁用 SSL 验证(不推荐) uv pip install requests --allow-insecure-host
清理缓存 uv cache prune

🧩 常见问题与解决方案

问题 原因 解决方案
invalid peer certificate: UnknownIssuer TLS 证书不被信任(常见于国内镜像) 使用 --trusted-host + --native-tls
uv 命令未找到 未加入 PATH 或安装失败 重新安装并检查 PATH
依赖解析卡顿 依赖复杂或索引响应慢 使用 --native-tls + 国内镜像

✅ 总结:uv 使用建议清单

项目 建议
安装包 uv pip install package
使用镜像 推荐清华镜像 + --trusted-host + --native-tls
创建环境 uv venv
运行脚本 uv run script.py
管理 pyproject.toml uv pip install -e .[dev]
安全网络 永远优先使用 --native-tls

📣 结语

uv 不仅仅是一个工具,它代表了 Python 生态的未来方向
快、安全、现代化

无论你是初学者还是资深开发者,从现在开始使用 uv,你将体验到前所未有的开发效率。


📎 GitHub 项目https://github.com/astral-sh/uv

📚 官方文档https://docs.astral.sh/uv

相关推荐
lambert.wang2 天前
当使用 uv 下载 Python 解释器时出现异常,通常是因为网络连接问题导致无法从 GitHub 下载安装包
python·github·uv
叼奶嘴的超人2 天前
Fastapi之UV安装方式与使用方式
fastapi·uv
lambert.wang3 天前
uv安装配置
uv
永霖光电_UVLED4 天前
连续波 UV-B 激光二极管问世,实现全球首次
大数据·人工智能·uv
要站在顶端4 天前
uv 工具核心操作总结文档
uv
枫叶是圆的4 天前
uv-ui组件的Tabbar 底部自定义导航栏 中间按钮凸起
uv
一株月见草哇8 天前
[python/uv]现代化python工具[先占坑]
python·uv
SunnyRivers9 天前
Python 包和项目管理工具uv核心亮点详解
python·uv·亮点
眼眸流转10 天前
MCP学习笔记
python·uv·pydantic·mcp
XerCis11 天前
Python包与环境管理工具uv及pyproject.toml指南
开发语言·python·uv