做Python项目,常见的麻烦不是代码本身,而是工具太散:用pip安装第三方软件包,用venv给项目划出独立环境,再用Poetry管理依赖和锁文件。稍不留神忘了启用虚拟环境,软件包就可能装错地方。Abid Ali Awan在KDnuggets撰文称,他已改用Astral开发的uv,把这些日常操作收进一套命令体系。
例如,新项目只需依次执行uv init、uv add和uv run。uv会建立项目结构,把依赖写入配置文件,创建.venv虚拟环境,并生成uv.lock锁文件——它记录实际采用的确切版本,方便同事、服务器和未来的自己尽量复现同一套环境。运行脚本时也不用每次手动启用环境;uv run会先检查环境是否与锁文件同步,再使用正确的依赖执行命令。
速度也是卖点:据作者转述,Astral的基准测试称uv比pip快10至100倍。不过,这一数字来自开发团队自己的测试。更确定的价值在于流程统一:对数据项目来说,少记几套命令,也少一次把环境弄乱的机会。