blog/source/_posts/【教程】Python 项目和包管理器 uv 安装以及使用.md

2.1 KiB
Raw Blame History

title date tags categories permalink index_img
【教程】Python 项目和包管理器 uv 安装以及使用 2024/11/9 13:12
windows
linux
uv
python
venv
技术 380.html https://i.dawnlab.me/bf3a9545e37daac5afbd662a9e265b4a.png

UV.png

介绍

官网

uv 是一个用 Rust 编写的 Python 包安装器和解析器。它旨在成为 pip 和 pip-tools 工作流的直接替代品。Astral 的开发者们的目标是创建一个 “Python 的 Cargo”这是一个全面的 Python 项目和包管理器,速度快、可靠且易于使用。

安装

国内安装优化

添加环境变量

使用 GitHub 镜像网站替换掉默认地址,加速下载

UV_INSTALLER_GHE_BASE_URL=https://ghproxy.cn/https://github.com
UV_PYTHON_INSTALL_MIRROR=https://ghproxy.cn/https://github.com/indygreg/python-build-standalone/releases/download

默认使用清华 pypi 源

UV_DEFAULT_INDEX=https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple

Windows

powershell -ExecutionPolicy ByPass -c "irm https://ghproxy.cn/https://github.com/astral-sh/uv/releases/latest/download/uv-installer.ps1 | iex"

Linux

curl -LsSf https://ghproxy.cn/https://github.com/astral-sh/uv/releases/latest/download/uv-installer.sh | sh

使用

创建项目

uv init hello-world
cd hello-world

或者

mkdir hello-world
cd hello-world
uv init

创建虚拟环境

uv venv .venv

指定 Python 版本号,未安装时会自动下载预构建的 Python 安装。

uv venv .venv --python=3.12

添加依赖

uv 会自动解决依赖关系。

uv add httpx

同步依赖环境

uv sync

同时包含所有可选依赖:

uv sync --all-extras

导出为传统依赖文件 requirements.txt

uv export -o requirements.txt

不包含 hashes

uv export -o requirements.txt --no-hashes

同时包含所有可选依赖:

uv export -o requirements.txt --no-hashes --all-extras