一个极其快速的 Python 包和项目管理工具,用 Rust 编写。
我们在日常开发中,经常要用到这些工具:
pip
:安装依赖pipx
:安装命令行工具poetry
或 rye
:管理项目和虚拟环境pyenv
:切换 Python 版本virtualenv
:创建虚拟环境pip-tools
:锁定依赖版本twine
:发布包这些工具虽然好用,但各自为政,使用起来比较分散。而 uv 的目标就是把它们整合成一个工具,统一操作方式,提升效率。
uv pip install
替代 pip,无缝迁移。官方推荐使用下面的命令安装:
bash展开代码curl -LsSf https://astral.sh/uv/install.sh | sh
也可以通过 pip 安装:
bash展开代码pip install uv
安装完成后,输入 uv --version
查看是否成功。
构建可发布的 Python 包(上传至 PyPI):
bash展开代码uv init myproject
cd myproject
这会创建一个基础项目结构,类似 poetry init
。
bash展开代码uv add requests
这个命令会自动更新 pyproject.toml
文件,并安装依赖。
bash展开代码uv venv
source .venv/bin/activate
你也可以指定 Python 版本:
bash展开代码uv venv --python 3.11
uv 支持运行带依赖的脚本,比如:
bash展开代码uv run python script.py
如果脚本里有注释声明依赖,uv 会自动安装。
比如安装 ruff:
bash展开代码uv tool install ruff ruff --version
或者直接运行:
bash展开代码uvx pycowsay 'Hello World'
bash展开代码uv lock
uv sync
这两个命令用于生成 lock 文件并同步安装依赖。
uv 是一个很值得尝试的新工具,特别是对于那些已经习惯了多个 Python 工具配合使用的开发者来说,它能带来更高效的体验。
本文作者:Dong
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!