大家好,我是 MAI麥造!

之前比較喜歡用 anaconda 來管理虛擬環境,但只做包管理又太大材小用了。

現在有一個輕量且更強的替代來了!!

一站式超快的 Python 包與環境管理工具:uv

作者:Astral ,口號:“比 pip 快 100 倍”

Pipenv--最好用的python虛擬環境和包管理工具_#開發語言


🧭 一、uv 是什麼?

Pipenv--最好用的python虛擬環境和包管理工具_#開發語言_02

uv 是一個基於 Rust 編寫的 Python 包管理器,它集成了以下功能:

工具

功能

在 uv 中的替代

pip

包安裝

uv pip

venv

虛擬環境

uv venv

poetry

依賴管理

uv add / uv sync

pip-tools

鎖定依賴

✅ 自動內置

👉 簡單理解:

uv = pip + venv + poetry 的極速整合版。


⚙️ 二、安裝 uv

# linux/MacOS 官方推薦方式(自動檢測平台)  
curl -LsSf https://astral.sh/uv/install.sh | sh  
  
# win11 上  
  
winget install uv

或通過 pip:

pip install uv

🚀 三、常用命令速查

1️⃣ 創建虛擬環境

uv venv

在當前目錄下創建 .venv 文件夾。

指定路徑:

uv venv .envs/myenv

2️⃣ 指定 Python 版本創建虛擬環境

uv venv --python 3.11

或指定絕對路徑:

uv venv --python /usr/local/bin/python3.11

💡 提示:uv 會自動下載所需 Python 版本(類似 pyenv 的體驗), 無需提前安裝該版本的解釋器。


3️⃣ 激活虛擬環境

# macOS / Linux  
source .venv/bin/activate  
  
# Windows  
.venv\Scripts\activate

4️⃣ 安裝依賴

uv pip install requests

可一次安裝多個:

uv pip install numpy pandas matplotlib

5️⃣ 安裝依賴文件

uv pip install -r requirements.txt

6️⃣ 導出依賴列表

uv pip freeze > requirements.txt

7️⃣ 使用 pyproject.toml 管理依賴

uv add fastapi uv remove fastapi uv sync

🔒 uv sync 會根據鎖文件精確重建環境。


8️⃣ 一次性運行腳本(自動加載環境)

uv run script.py

9️⃣ 臨時安裝依賴並運行命令

uv run --with requests python -c "import requests; print(requests.__version__)"

在隔離環境中運行,不污染全局依賴。


🔟 初始化項目模板

uv init myproject

自動創建項目結構和 pyproject.toml


🧩 四、實用命令對照表

功能

命令

説明

創建虛擬環境

uv venv

默認使用當前 Python

指定 Python 版本

uv venv --python 3.11

自動下載版本

安裝包

uv pip install <pkg>

兼容 pip

安裝文件依賴

uv pip install -r requirements.txt

導出依賴

uv pip freeze > requirements.txt

添加依賴(TOML)

uv add <pkg>

類似 poetry

刪除依賴

uv remove <pkg>

同步依賴

uv sync

更新虛擬環境

臨時運行

uv run --with <pkg> <cmd>

不污染環境

初始化項目

uv init

創建標準項目結構


💡 五、優點總結

✅ 極快安裝速度(Rust 實現,比 pip 快 10–100 倍)

✅ 自動管理虛擬環境與依賴鎖定✅ 完全兼容 pip✅ 支持多 Python 版本共存與下載✅ 可替代 Poetry、pip-tools、pyenv、pipx 的組合


🔍 六、進階技巧

✨ 指定 Python 版本運行腳本

uv run --python 3.10 main.py

✨ 查看所有可用 Python 版本

uv python list

✨ 安裝特定 Python 版本

uv python install 3.12

七、

這是一個常用的 uv 命令速查表。 大家可以 mark 住,需要的時候可以快速找到~