当前位置: 代码网 > it编程>前端脚本>Python > Python依赖包管理工具uv安装与使用详解

Python依赖包管理工具uv安装与使用详解

2025年08月12日 Python 我要评论
简介uv 是一个用 rust 编写的 python 包安装和依赖管理工具,比传统工具(如 pip)有着更快、更高效的体验。它主要关注两个核心目标:速度: uv 在包安装、依赖解析和虚拟环境创建等方面进

简介

uv 是一个用 rust 编写的 python 包安装和依赖管理工具,比传统工具(如 pip)有着更快、更高效的体验。它主要关注两个核心目标:

  • 速度: uv 在包安装、依赖解析和虚拟环境创建等方面进行了优化,速度有显著的提升。
  • 效率: uv 可以减少资源消耗,尤其是在大型项目中。

uv 基于 pip 和 venv 的概念,因此与现有 python 生态系统兼容,学习曲线相对平缓。

github仓库:https://github.com/astral-sh/uv

1.安装

使用 pip 安装 uv:

pip install uv

检查当前安装的 uv 版本,可以在命令行中运行以下命令:

uv --version

2. 基本使用

2.1 创建虚拟环境

uv 可以快速创建 python 虚拟环境:

uv venv .venv  # 创建一个名为 .venv 的虚拟环境

python -m venv .venv 相比,uv 版本的速度通常更快。

2.2 激活虚拟环境

创建好虚拟环境后,需要激活它才能使用:

.venv\scripts\activate  # 在 windows 上

uv venv -p 3.11.9  # 指定本机已安装的python版本

2.3 初始化项目

uv init  # 生成pyproject.toml

2.4 安装依赖

用 uv 导入 requirements.txt 到 pyproject.toml

uv add -r requirements.txt

这条命令会把 requirements.txt 里的所有依赖添加到 pyproject.toml,并生成/更新 uv.lock,同时自动安装依赖。

用 uv 管理依赖
以后我们可以用 uv add、uv remove、uv sync 等命令来管理依赖,而不再需要手动维护 requirements.txt。

从pyproject.toml自动安装依赖:

uv sync

这条命令会根据 pyproject.toml(和 uv.lock,如果存在)自动安装所有声明的依赖包。
如果是第一次运行 uv sync,且还没有 uv.lock 文件,uv 会解析 pyproject.toml,下载并安装依赖,并自动生成 uv.lock 文件用于锁定依赖版本。

添加一个或多个依赖:

uv add pandas airtest

uv 在安装依赖时,会进行并行下载和编译,显著提升速度。

2.4 移除依赖

使用 remove 命令移除依赖包:

uv remove requests

2.5 查看已安装的包

使用 list 命令查看已安装的包:

uv pip list

2.6 生成 requirements.txt

虽然 uv 自身不直接提供生成 requirements.txt 的功能,但你可以使用 pip freeze 命令:

uv pip freeze > requirements.txt

3. uv 与 pip、pipenv、virtualenv 的对比

功能uvpippipenvvirtualenv
安装速度更快较慢中等不适用
资源占用更低较高中等中等
并行下载支持有限支持不支持不适用
虚拟环境创建速度更快较慢中等较慢
依赖管理支持支持支持不适用
虚拟环境管理支持不支持支持支持
项目初始化支持不支持支持不支持
依赖锁定支持不支持支持不支持
跨平台支持支持支持支持支持

总结

uv 是一个新兴的 python 包安装和依赖管理工具,凭借其用 rust 编写的高效实现,在速度和资源占用方面显著优于传统的 pip 和 virtualenv。uv 不仅支持快速创建虚拟环境,还能并行下载和编译依赖包,极大地提升了开发效率。此外,uv 还提供了项目初始化和依赖锁定等功能,使其在功能上与 pipenv 相当,但在性能上更具优势。

到此这篇关于python 依赖包管理工具uv安装使用详解的文章就介绍到这了,更多相关python 依赖包管理工具uv内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com