uv管理python环境

UV 是 Python 生态系统中的新一代一体化项目工具,由 Astral 公司使用 Rust 开发编写,它集成了包管理、虚拟环境、项目脚手架等多种功能。

安装 UV

  • Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
  • Windows (PowerShell)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# 添加到环境变量
export PATH="$HOME/.local/bin:$PATH"  # 添加到 ~/.bashrc 或 ~/.zshrc
  • pip安装
pip install uv

验证安装

uv --version
uv --help

📄 基础使用

1. 项目初始化

  • 创建新项目
uv init my-project
cd my-project
  • 初始化现有目录
cd existing-project
uv init

这会创建:

  • pyproject.toml- 项目配置文件
  • .python-version- Python 版本文件
  • README.md- 项目说明
  • 虚拟环境(可选)

2. 依赖管理

# 添加依赖(自动更新 pyproject.toml)
uv add requests
uv add "flask>=2.0.0"
uv add "pandas>=2.0.0,<3.0.0"

# 添加开发依赖
uv add --dev pytest
uv add --dev pytest-cov black

# 从文件安装
uv add -r requirements.txt
uv add -r requirements-dev.txt

# 移除依赖
uv remove requests

3. 虚拟环境管理

# 创建虚拟环境
uv venv
uv venv .venv          # 指定目录
uv venv --python 3.10  # 指定Python版本

# 激活环境
# Linux/macOS
source .venv/bin/activate
# Windows
.venv\Scripts\activate

# 列出虚拟环境
uv venv list

# 删除虚拟环境
uv venv remove .venv

4. 依赖同步与锁定

# 同步依赖(根据 pyproject.toml 安装)
uv sync

# 同步并生成锁定文件
uv sync --locked
# 或
uv lock
uv sync

# 仅生成锁定文件
uv lock --no-sync

# 更新所有依赖
uv sync --upgrade
uv lock --upgrade

📁 项目结构示例

my-project/
├── pyproject.toml      # 项目配置和依赖
├── uv.lock             # 锁定文件
├── .python-version     # Python版本
├── .venv/              # 虚拟环境
├── src/
│   └── my_project/
│       ├── __init__.py
│       └── main.py
├── tests/
│   └── test_main.py
└── README.md
posted on 2026-01-13 11:02  芥子须弥K  阅读(20)  评论(0)    收藏  举报