• 简体中文
  • 2.2 Python 与 uv

    DORA 的 Python 节点需要一个 Python 运行时和一个包管理器来安装依赖。本课程推荐使用 uv——一个用 Rust 编写的极速 Python 包管理器(比 pip 快 10-100 倍),它同时内置 Python 版本管理功能。

    安装 uv

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

    安装后重新打开终端(或执行 source ~/.cargo/env),确认可用:

    uv --version
    uv 的功能

    uv 同时扮演了 pip(包安装)和 pyenv(Python 版本管理)的角色。安装后可直接用 uv python install 安装指定版本 Python,用 uv pip install 装包。

    安装 Python

    uv 安装完成后,用它安装本课程使用的 Python 版本:

    uv python install 3.12

    安装完成后,可用以下命令验证:

    uv run python --version
    # 应输出 Python 3.12.x
    关于系统 Python

    macOS 和 Linux 通常自带 Python,但不建议直接使用系统 Python(版本可能过旧,且安装包可能污染系统环境)。使用 uv 管理的 Python 是隔离的,不会影响系统自带的版本。

    创建虚拟环境

    后续所有 Python 节点都在 uv 虚拟环境中运行,保证依赖隔离、版本一致。在课程工作目录下创建虚拟环境:

    # 在课程工作目录下执行
    uv venv

    此命令会创建 .venv/ 目录,包含一个独立的 Python 环境。

    每次开始课程操作前,需要激活虚拟环境:

    macOS / Linux
    Windows
    source .venv/bin/activate

    激活后终端提示符前会显示 (.venv),表示当前在虚拟环境中:

    (.venv) $ python --version
    Python 3.12.x
    后续操作默认在虚拟环境中

    从本章之后的课程中,python xxx.pypip install xxx 等命令都默认在虚拟环境中执行。每次新开终端都要先执行 source .venv/bin/activate(Windows 为 .venv\Scripts\activate)。

    安装依赖

    虚拟环境激活后,安装课程所需的 Python 包:

    # 安装 pyarrow(DORA Python 节点必需)
    uv pip install pyarrow
    
    # 后续各章用到的包,如 opencv-python、ultralytics、sherpa-onnx 等,
    # 在对应章节会单独说明,使用时按需安装即可。

    小结

    • 使用 uv 安装和管理 Python 环境。
    • macOS/Linux: curl -LsSf https://astral.sh/uv/install.sh | sh
    • Windows: PowerShell 运行安装脚本。
    • uv python install 3.12 安装课程使用的 Python 版本。
    • uv venv 创建虚拟环境,每次新开终端先激活source .venv/bin/activate 或 Windows 的 .venv\Scripts\activate)。
    • uv 隔离管理 Python,不冲突系统自带版本。