pip是最常用的Python包管理工具,但现在出现了一个挑战者,速度更快,功能更全面和强大,而且被广泛用在AI MCP管理中,那就是uv。
uv是一个拥有环境管理、依赖管理、Python版本管理、运行脚本、打包发布等多种功能的Python一体化工具链,可以说集齐了venv、virtualenv、pip、poetry能力于一身。
据说uv对于包的解析安装速度比pip快数十倍,配置虚拟环境的速度也比virtualenv快数十倍。
uv官方非常自信,喊话pip、virtualenv,你有的我都有,而是更好,你没有的我也有。总之是uv在手,功能全有。
1、安装uv
uv可以通过powershell命令行安装:
irm https://astral.sh/uv/install.ps1 | iex
或者直接用pip安装:
pip install uv
2、配置虚拟环境
使用uv init
命令来创建Python项目
然后在Python项目中添加依赖,使用uv add
命令实现,比如uv add pandas
其他主要的虚拟环境管理方法有:
uv remove
: 移除依赖
uv sync
: 同步依赖到虚拟环境中
uv lock
: 生成锁文件
uv run
: 在虚拟环境中运行脚本
uv tree
: 查看依赖列表
uv build
: 生成发布包
uv publish
: 发布到PyPI
3、包管理
uv能实现pip的所有功能,语法一致 ,而且比pip安装包的速度更快。
比如说安装第三方库,使用uv pip install
命令实现:
uv pip
命令是移植了pip的接口,但对速度和功能做了优化,比pip体验会更好。
uv其他主要的包管理方法有:
uv pip show
: 显示已安装包的细节
uv pip freeze
: 显示已安装包列表及其版本号
uv pip check
: 检查当前环境是否有兼容的软件包
uv pip uninstall
: 卸载包
uv pip tree
: 查看环境依赖
4、管理Python版本
uv可以安装Python,以及对其版本进行管理。
比如安装不同版本Python:
uv python install 3.10 3.11 3.12
其他主要方法有:
uv python list
: 查看安装的Python版本
uv python pin
: 将当前项目固定为使用特定 Python 版本
uv python uninstall
: 卸载某版本Python
5、执行Python脚本
uv能直接执行Python脚本,这个功能很方便。
执行脚本,使用uv run
命令:
uv run example.py
总的来说,uv基本能实现venv、virtualenv、pip、poetry的所有功能,而且速度更快,功能更多,能减少工具切换的时间成本,可能会成为Python环境管理的首选工具。