2026-01-29
环境配置
00

目录

安装
创建项目
添加依赖
执行代码
python版本管理
讨论

本文将简单介绍如何使用uv管理项目。uv作为最近兴起的python环境工具,其具备的优势有:

  1. 集成了python版本和项目创建管理
  2. 轻量化和简洁的运行脚本,自动激活venv的环境
  3. 精准管理依赖,可以清楚不必要的依赖

安装

macos 和 linux 执行以下命令

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

创建项目

创建项目文件夹,在项目文件夹下执行代码:

uv init

这会创建main.py ,pyproject.toml ,README.md 还有 .gitignore文件,直接初始化为一个git 项目。 pyproject.toml 文件存放项目元信息(描述和版本)和 相关依赖。

添加依赖

比如我要开发一个mcp服务器:

uv add mcp

这会将依赖的信息写入pyproject.toml 中,同时自动在项目目录下创建一个.venv文件,将相关的包写入.venv中。同时会生成一个uv.lock文件。这个文件存放了根据pyproject.toml 依赖具体下载的各种依赖版本,而不是一个>0.xx版本的描述,这个文件可以让交付的时候保证开发环境完全一致

当其他人下载或克隆了项目之后直接执行:

uv sync --frozen

会按 uv.lock 把环境装到一致。同时自己开发的过程如果移除过一些包,执行这个命令可以清理项目无关的依赖。 如果是自己在开发下直接使用uv sync,这个非严格模式会更新锁。

移除依赖的命令如下:

uv remove requests

执行代码

假如现在我们配置好相关依赖,就可以执行代码,因为依赖安装在.venv中,按照传统的方式可能需要激活环境,但是uv简化了这个过程,直接执行:

uv run main.py

除此之外,有时候需要执行某个脚本工具,但是不想污染系统python环境和项目的.venv的环境,就使用uvx命令,其可以创建一个临时的虚拟环境:

uvx ruff check .

python版本管理

有时候某些代码需要指定python版本,可以通过以下命令安装指定版本的python:

uv python install 3.12

安装后在项目根目录下执行:

uv python pin 3.12

讨论

如果不涉及到gpu,cuda等需要大量二进制预编译的环境,使用uv其实已经满足大部分需求了,比起conda的环境管理要更加方便。

本文作者:James

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!