在學習使用 MCP 的時候接觸到了 UV 這個環境管理工具,經過對比,發現它在諸多方面比 venv、conda 等工具更為出色,因此整理了這份簡單的入門學習筆記,希望能幫助大家快速上手。
介紹
UV 是一款集 Python 版本管理、虛擬環境創建與管理、依賴安裝等多功能于一體的輕量級工具,可類比為 “pyenv + virtualenv + pip-tools” 的組合。與傳統工具不同,它使用 Rust 編寫,這賦予了它卓越的性能,在處理依賴安裝與解析時,速度可比 pip 快 10 - 100 倍 。
uv 的特點:
- 速度更快:相比 pip ,uv 采用 Rust 編寫,性能更優。
- 支持 PEP 582:無需 virtualenv ,可以直接使用
- 兼容 pip :支持 pypackages 進行管理。 requirements.txt 和 pyproject.toml 依賴管理。
- 替代 venv :提供 uv venv 進行虛擬環境管理,比venv更輕量
- 跨平臺:支持 Windows、macOS 和 Linux。
安裝
方法 1:pip
使用 pip 安裝(適用于已安裝 pip 的系統)
pip install uv
方法 2:curl
使用 curl 直接安裝 如果你的系統沒有 pip
直接運行:
curl https://raw.githubusercontent.com/1stG/uv/master/installer.sh | bash
這會自動下載 uv 并安裝到 /usr/local/bin 。
方法 3:Windows 下的 PowerShell 安裝
在 Windows 系統中,可通過 PowerShell 執行以下命令進行安裝:
irm https://raw.githubusercontent.com/1stG/uv/master/installer.ps1 | iex
安裝完成后,可通過命令uv --version
驗證是否安裝成功 。
換源
在 Windows 系統上修改 UV 的下載源,通過環境變量修改
UV 提供了 UV_PYPI_INDEX_URL環境變量來設置默認的包索引源。
設置方法:
打開 “此電腦” 或 “我的電腦”,右鍵點擊選擇 “屬性”。
在彈出的窗口中選擇 “高級系統設置”。
在 “系統屬性” 窗口中,點擊 “環境變量” 按鈕。
在 “系統變量” 或 “用戶變量” 中點擊 “新建”:
變量名:UV_PYPI_INDEX_URL
變量值:設置為你想要的鏡像源地址,例如 https://pypi.tuna.tsinghua.edu.cn/simple。
點擊 “確定” 保存設置。
創建項目
筆者自己的理解:
? 在傳統的 venv、conda 等環境管理工具中,環境與項目相對獨立,一個環境可運行多個項目代碼(前提是環境匹配)。而 UV 通過在項目目錄生成配置文件(.uv
),實現環境與項目的便捷關聯。默認情況下,進入項目目錄時需手動激活環境,也可配置自動激活 。環境本質上是獨立的,可在多個項目中復用。
因此,創建項目即創建環境。
uv init project_name --python 3.12
cd project_name
我們這里示例創建一個uv項目,名字叫uv_study:
uv init uv_study --python 3.12
cd uv_study
執行上述命令后,UV 會在當前目錄下創建一個基于 Python 3.12 的虛擬環境,并生成.uv
配置文件
這樣,一個uv項目或者說一個uv環境就創建好了。
庫管理
要想在這個環境中添加依賴庫,只需要使用uv add命令即可。(當然得在對應的項目目錄下)
uv add package_name
# 等效于pip install,但是比pip更快
例如,下圖是uv初始環境:
我們現在新安裝一個requests庫:
uv add requests
安裝完成后,uv會自動在pyproject.toml寫入依賴,比傳統的requirements.txt高效得多。
當然也可以刪除庫:
uv remove requests
運行項目
我們簡單修改一下main.py運行測試一下:
使用uv run即可
uv run main.py
使用別人的uv項目
我們這里先刪除我們自己的venv環境:
然后再重新導入這個uv項目,同步依賴,根據項目pyproject.toml
文件安裝所有聲明的包:
uv sync
如此,即可快速搭建與原作者一致的開發環境 。