Python环境管理利器UV
UV是Astral开发的一款超高速Python包管理与项目管理工具。传统方案依赖大量割裂的工具,且包解析和包安装的速度过慢,UV提供了统一、快速、可靠且现代的解决方案。
参考地址:uv 中文文档
安装
UV采用Rust语言开发,本身是一个独立的可执行文件,可以通过多种方式安装
-
Cargo统一安装(需要事先安装Rust):
cargo install --git https://github.com/astral-sh/uv uv -
Linux安装:
curl -LsSf https://astral.sh/uv/install.sh | sh -
Windows安装:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
基本用法
常用命令及基本作用如下图所示:


创建项目
-
uv init pro1:创建pro1项目文件夹,创建pyproject.toml、.python-version等文件,如下图所示,这是还没有创建虚拟环境。 -
uv lock:根据pyproject.toml文件创建锁文件uv.lock,根据前者确定精确的依赖版本。 -
uv sync:根据锁文件uv.lock创建虚拟环境.venv文件夹,如果没有锁文件,先创建之。 -
uv venv:手动创建虚拟环境,可以指定python版本,如果不带任何参数,就按照本文件夹下的配置文件创建。
包管理
uv add/remove xxx:这是uv提供的较新的包管理方式,可以将包纳入项目依赖管理,从而保证复现一致性。uv pip install xxx:在虚拟环境中使用pip工具管理依赖包,直接把包安装到当前虚拟环境中,不会修改任何配置环境。
除此之外,第一种方式会自动创建虚拟环境,第二种方式需要已有虚拟环境。
运行项目
uv run xxx.py:运行python脚本。
另一利器——Pixi
同UV一样,Pixi也是用Rust开发的一款优秀的Python环境管理工具。除了Pip包,它还支持Conda包。这在一定程度上弥补了UV对Conda包支持不足的问题。
它的用法也同UV类似:
pixi init pro1:创建项目文件夹,同步创建pixi.toml配置文件,还没有创建Python虚拟环境。pixi lock:根据pixi.toml文件创建锁文件pixi.lock。pixi add/remove/search xxx:安装/卸载/查询包,安装包时如果没有环境,则创建。pixi install/reinstall:同uv sync,根据锁文件创建虚拟环境,如果没有锁文件,先创建之。pip run python xxx.py:在虚拟环境中运行脚本。
选择方法
UV对包的管理速度最快,如果项目不依赖Conda包,则优先使用UV,否则只使用Pixi.
(转载本站文章请注明作者和出处lihaohello.top,请勿用于任何商业用途)