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

 更新时间:2025年08月12日 11:08:01   作者:blues_C  
UV 是一个新兴的 Python包安装和依赖管理工具,凭借其用 Rust 编写的高效实现,在速度和资源占用方面显著优于传统的pip和 virtualenv,这篇文章给大家介绍Python依赖包管理工具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内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于python3实现倒叙字符串

    基于python3实现倒叙字符串

    这篇文章主要介绍了基于python3实现倒叙字符串,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • Anaconda 离线安装 python 包的操作方法

    Anaconda 离线安装 python 包的操作方法

    今天小编就为大家分享一篇Anaconda 离线安装 python 包的操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • 详解django中Template语言

    详解django中Template语言

    Django是一个开放源代码的Web应用框架,由Python写成。这篇文章给大家介绍django中Template语言,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧
    2020-02-02
  • 利用python实现命令行有道词典的方法示例

    利用python实现命令行有道词典的方法示例

    平常都是用终端敲, 有时候不会的词语也懒得打开词典了,干脆搞了个简单的查词命令。下面这篇文章主要给大家介绍了利用python实现命令行有道词典的方法示例,需要的朋友可以参考借鉴,一起来看看吧。
    2017-01-01
  • Python本地cache不当使用导致内存泄露的问题分析与解决

    Python本地cache不当使用导致内存泄露的问题分析与解决

    最近在项目开发中遇到了本地cache不当使用导致的一个内存泄露问题,所以本文主要分析了问题出现的原因已经解决方法,需要的小伙伴可以参考下
    2023-08-08
  • Django实现登录随机验证码的示例代码

    Django实现登录随机验证码的示例代码

    登录验证码是每个网站登录时的基本标配,这篇文章主要介绍了Django实现登录随机验证码的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • 基于Python的数据分析与可视化

    基于Python的数据分析与可视化

    在当今数字化时代,数据分析和可视化已经成为了企业和个人必备的技能,Python 作为一种高级编程语言,具有易学易用、高效快捷的特点,在数据科学领域中得到了广泛应用,本篇文章将介绍基于 Python 的数据分析与可视化
    2023-07-07
  • Python实现对相同数据分箱的小技巧分享

    Python实现对相同数据分箱的小技巧分享

    这篇文章主要给大家介绍了关于Python实现对相同数据分箱的小技巧,文中通过实例代码介绍的非常详细,对大家学习或者使用python具有一定的参考学习价值,需要的朋友可以参考下
    2022-01-01
  • python计算RPKM操作示例详解

    python计算RPKM操作示例详解

    这篇文章主要为大家介绍了python计算RPKM操作示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • VS Code中的Python代码格式化插件示例讲解

    VS Code中的Python代码格式化插件示例讲解

    在Java开发过程中,代码的规范性和可读性至关重要,一个团队中如果每个开发者的代码风格各异,会给代码的维护、审查和协作带来极大的困难,这篇文章主要介绍了VS Code中Python代码格式化插件的相关资料,需要的朋友可以参考下,
    2025-11-11

最新评论