2025年5月12日 星期一

>Python UV 管理器:從安裝到使用

 

Python UV 管理器:從安裝到使用

UV 是一款強大的 Python 包管理工具,能夠替代 pip、pip-tools、pipx、poetry、pyenv、twine、virtualenv 等工具,提供高效的 Python 版本管理、依賴管理及虛擬環境管理,這裡簡單描述以利日後查找。

 


1. UV 的特點

  • 一體化工具鏈:安裝 UV 即可取代多個獨立工具,減少版本衝突與配置負擔。

  • 極致性能:基於 Rust 開發,安裝與解析速度遠超傳統 pip。

  • 一致性與可重複性:透過 uv.lock 文件,確保不同環境的依賴一致性。

  • 輕量虛擬環境管理:內建 venv 功能,無需依賴外部工具。

  • 完善的 Python 版本管理:類似 pyenv,但更適合項目隔離,不影響系統環境。

2. UV 的安裝

UV 提供多種安裝方式,適用於不同平台:

方式 1:使用官方安裝腳本

適用於 Linux 和 macOS:

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

適用於 Windows:


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

方式 2:使用 pip 安裝

如果已安裝 Python,則可使用 pip 安裝:

pip install uv

方式 3:其他安裝方式

UV 也支持 Homebrew、WinGet、Scoop、Docker 或 GitHub Releases 安裝。例如:

brew install uv

3. UV 的基本使用

安裝完成後,可以使用 UV 來管理 Python 項目:

初始化新項目

uv init myproject
cd myproject

UV 會自動建立 .gitignore.python-versionpyproject.toml 等文件,並初始化 Git 倉庫。

添加package

uv add numpy

這將自動:

  1. 創建虛擬環境並安裝 numpy

  2. numpy 添加至 pyproject.toml

  3. 生成 uv.lock 文件,確保依賴一致性

運行 Python 腳本

uv run python script.py

或指定 Python 版本:

uv run --python 3.11 script.py

同步依賴

uv sync

這將確保所有依賴與 uv.lock 文件保持一致。

4. 參考文獻