uv如何管理python环境?
编辑
2025-06-10
工具使用
00

目录

1. 安装 UV
2. 创建虚拟环境
3. 管理 Python 版本
4. 管理依赖
5. 项目管理
6. 工作原理
总结

UV 是一个由 Astral 团队开发的高性能 Python 环境管理工具,它集成了包管理、虚拟环境管理和 Python 版本管理等功能。以下是使用 UV 管理 Python 环境的主要步骤和方法:

1. 安装 UV

UV 可以通过多种方式安装:

  • 通过 pip 安装(不推荐,功能可能不全):
    bash
    展开代码
    pip install uv
  • 通过脚本安装(推荐):
    • Linux/macOS
      bash
      展开代码
      curl -LsSf https://astral.sh/uv/install.sh | sh
    • Windows(PowerShell):
      powershell
      展开代码
      irm https://astral.sh/uv/install.ps1 | iex
    安装完成后,可以通过 uv --version 验证安装。

2. 创建虚拟环境

UV 可以快速创建虚拟环境:

  • 基本创建
    bash
    展开代码
    uv venv # 默认在当前目录创建 `.venv`
  • 指定路径创建
    bash
    展开代码
    uv venv path/to/env # 在指定路径创建虚拟环境
  • 指定 Python 版本
    bash
    展开代码
    uv venv --python 3.10 # 使用 Python 3.10 创建环境 uv venv --python 3.10 ~/python3_10_env
    也可以通过 .python-version 文件指定版本:
    bash
    展开代码
    uv python pin 3.10 # 生成 `.python-version` 文件 uv venv # 自动使用指定版本

激活虚拟环境

  • Linux/macOS
    bash
    展开代码
    source .venv/bin/activate
  • Windows
    powershell
    展开代码
    .venv\Scripts\activate

3. 管理 Python 版本

UV 支持多版本 Python 管理:

  • 安装指定版本
    bash
    展开代码
    uv python install 3.10 3.11 # 安装多个版本
  • 查看已安装版本
    bash
    展开代码
    uv python list
  • 切换版本
    bash
    展开代码
    uv python pin 3.11 # 固定当前目录的 Python 版本

4. 管理依赖

UV 提供了与 pip 兼容的接口,但性能更高:

  • 安装依赖
    bash
    展开代码
    uv pip install requests # 安装单个包 uv pip install -r requirements.txt # 从文件安装
  • 导出依赖
    bash
    展开代码
    uv pip freeze > requirements.txt
  • 同步依赖
    bash
    展开代码
    uv pip sync requirements.txt # 完全同步环境
  • 开发与生产依赖分离
    bash
    展开代码
    uv add --dev pytest # 添加开发依赖

5. 项目管理

  • 初始化项目
    bash
    展开代码
    uv init my_project # 创建新项目 cd my_project
    这会生成 .venvpyproject.tomluv.lock 文件。
  • 运行脚本
    bash
    展开代码
    uv run script.py # 自动安装脚本依赖并运行

6. 工作原理

UV 的性能优势源于:

  • Rust 实现:高效且内存安全。
  • 并行处理:加速依赖解析和包安装。
  • 全局缓存:避免重复下载和安装。

总结

UV 是一个功能强大且高效的 Python 环境管理工具,适合替代传统的 pipvirtualenvpyenv。它通过统一的命令简化了开发流程,并显著提升了性能。

如果需要更详细的信息,可以参考 UV 官方文档

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!