安装#
Linux#
curl -LsSf https://astral.sh/uv/install.sh | sh
bashWindows#
官方脚本:
irm https://astral.sh/uv/install.ps1 | iex
powershellWinget:
winget install uv
powershell使用#
输入 uv
可查看各种命令用法。
1. 管理 Python 版本#
uv 可以轻松管理多个 Python 版本,无需额外安装 pyenv 等工具。
查看可用的 Python 版本:
uv python list
bash安装指定版本的 Python:
# 安装 python 版本
uv python install 3.11.6
# 安装 pypy 版本
uv python install pypy3.10
bash设置全局默认 Python 版本:
uv python default 3.11.6
bash2. 管理虚拟环境#
创建并激活虚拟环境:
# 创建名为 .venv 的虚拟环境(默认)
uv venv
# 激活环境(macOS/Linux)
source .venv/bin/activate
# 激活环境(Windows)
.venv\Scripts\activate
bash在项目中指定 Python 版本:
# 这会创建 .python-version 文件,标识项目所需的 Python 版本
uv python pin 3.11
bash3. 管理包#
安装包:
# 安装最新版本
uv pip install requests
# 安装特定版本
uv pip install requests==2.31.0
# 从 requirements.txt 安装
uv pip install -r requirements.txt
bash安装包到开发环境:
uv pip install --dev pytest
bash升级包:
uv pip upgrade requests
bash卸载包:
uv pip uninstall requests
bash导出依赖:
# 导出当前环境的依赖
uv pip freeze > requirements.txt
# 导出生产环境依赖(排除开发依赖)
uv pip freeze --production > requirements.txt
bash4. 项目管理#
uv 支持 pyproject.toml 格式的项目管理,这是现代 Python 项目的标准配置文件。
初始化一个新项目:
uv init my_project
cd my_project
bash这会创建基本的项目结构和 pyproject.toml 文件。
安装项目的依赖:
uv sync
bash这个命令会根据 pyproject.toml 和 requirements.txt 安装所有依赖,类似于 pip install -e . 但更高效。
说明: uv sync 是一个依赖管理命令,它的作用类似于您可能更熟悉的 pip install -r requirements.txt,但更快、更强大、更可靠。
您可以把它理解为:“一键安装这个项目正常运行所需的所有第三方软件包(依赖库)”。
uv sync 如果安装太慢,可以设置国内镜像源 https://pypi.tuna.tsinghua.edu.cn/simple: ↗
在项目根目录的 pyproject.toml 文件 [tool.uv] 处设置 index-url:
[tool.uv]
index-url = "https://pypi.tuna.tsinghua.edu.cn/simple"
tomlpip + virtualenv 迁移到 uv:
# 创建并激活 uv 虚拟环境
uv venv
source .venv/bin/activate
# 安装依赖
uv pip install -r requirements.txt
bash