uv 配置和简单使用
什么是 uv
使用 rust 开发的 python 包和项目管理工具 Releases · astral-sh/uv
安装
macOS 和 linux
curl -LsSf https://astral.sh/uv/install.sh | sh
windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
uv 默认安装在 ~/.local/bin
,安装完会提示配置环境变量
windows 下配置环境变量 (可选)
不配置都将下载在 C
盘目录下
索引
UV_DEFAULT_INDEX=https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
缓存位置,与项目代码放在同一盘符下,否则会提示 hardlink
警告。(必配置)
UV_CACHE_DIR=H:\uv\cache
python 可执行文件位置
UV_PYTHON_BIN_DIR=H:\uv\python_bin
uv 管理的 python 安装位置
UV_PYTHON_INSTALL_DIR=H:\uv\python_install
uv 管理的工具位置
UV_TOOL_DIR=H:\uv\tool
uv 管理的可执行文件位置
UV_TOOL_BIN_DIR=H:\uv\tool_bin
卸载
删除 uv
安装的数据
uv cache clean
rm -r "$(uv python dir)"
rm -r "$(uv tool dir)"
删除 uv
和 uvx
rm ~/.local/bin/uv ~/.local/bin/uvx
更新
通过独立安装程序安装,uv 可以使用以下程序自更新
uv self update
linux 配置索引镜像
在 .zshrc
文件中
export UV_DEFAULT_INDEX=https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
Shell autocompletion
确定使用的 shell (echo $SHELL
),执行对应的命令,然后重启 shell
或使用 source
命令
zsh
echo 'eval "$(uv generate-shell-completion zsh)"' >> ~/.zshrc
bash
echo 'eval "$(uv generate-shell-completion bash)"' >> ~/.bashrc
powershell
if (!(Test-Path -Path $PROFILE)) {New-Item -ItemType File -Path $PROFILE -Force
}
Add-Content -Path $PROFILE -Value '(& uv generate-shell-completion powershell) | Out-String | Invoke-Expression'
该命令的效果是可以使用 tab
键补全对应的指令
基本使用
安装 python
# 可以同时指定多个版本,不指定默认最新版本
uv python install 3.12 3.11
重新安装 python
uv python install 3.12 --reinstall
创建环境
uv venv --python 3.12.0
安装包
uv pip install pandas
虚拟环境
将在当前目录使用系统的 python 版本创建虚拟环境,默认名称 .venv
uv venv
指定 python 版本
uv venv --python 3.12
指定虚拟环境名和版本,注意指定了环境名之后,使用 uv pip
不会识别,需要 cd main
,然后执行
uv venv --python 3.12 main
激活环境
source bin/activate
管理 uv 状态
# 移除 cache
uv cache clean
# 移除过时 cache
uv cache prune
# 显示 cache 目录路径
uv cache dir
# 显示 tool 目录路径
uv tool dir
# 显示 nv 安装的 python 版本路径
uv python dir
项目
初始化项目 init
uv init hello-world
在项目中使用 add
安装需要的包
# add 可以同时安装多个包
uv add pandas
移除不需要的包 remove
uv remove numpy