欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > Python包管理新篇章!解析uv工具的高效解决方案

Python包管理新篇章!解析uv工具的高效解决方案

2025/6/30 20:01:39 来源:https://blog.csdn.net/weixin_42474540/article/details/148147576  浏览:    关键词:Python包管理新篇章!解析uv工具的高效解决方案

📦 项目地址
GitHub: https://github.com/astral-sh/uv

✅ 一句话总结 uv 的特点:
uv 是一个快速、现代的 Python 包管理器,支持虚拟环境、依赖安装、lock 文件生成,兼容 pip + requirements.txt + pyproject.toml。

🛠️ 安装 uv
curl -Ls https://astral.sh/uv/install.sh | sh
或者通过 cargo(Rust 的包管理器)安装:
cargo install uv
安装完成后,使用 uv --version 验证。

🚀 常见用法教程

  1. 创建虚拟环境
    uv venv
    默认会在当前目录创建 .venv/ 文件夹。
    激活虚拟环境(Unix):
    source .venv/bin/activate

  2. 安装依赖

  • 使用 requirements.txt:
    uv pip install -r requirements.txt
  • 单独安装某个包:
    uv pip install requests flask
  • 将当前环境依赖保存到 requirements.txt:
    uv pip freeze > requirements.txt
  1. 使用 lock 文件
    uv pip compile requirements.txt
    会生成一个 requirements.lock 文件(包含精准的版本锁定信息,可复现安装)。
    uv pip install -r requirements.lock

  2. 支持 pyproject.toml(如 poetry 项目)
    如果你项目是基于 pyproject.toml 的结构(如 poetry 或 PDM 管理),也可以使用 uv:
    uv pip install -r pyproject.toml

🔍 文件说明
文件 说明
requirements.txt 传统的依赖列表(如 flask>=2.0
)用于快速安装,不锁定子依赖版本
requirements.lock uv pip compile
自动生成的锁文件,记录所有依赖和版本确保团队/部署环境一致
pyproject.toml 现代 Python 项目元数据文件(如项目名、版本、依赖)被 poetry、PDM、hatch 等现代工具采用

✅ 典型项目工作流(推荐)
uv .venv # 创建虚拟环境
source .venv/bin/activate
uv pip install -r requirements.txt
uv pip compile requirements.txt # 生成 lock 文件
uv pip compile requirements.txt --output requirements.lock # 需要重定向文件输出保存为文件
部署时:
uv pip install -r requirements.lock # 安装完全一致的依赖版本

⚡️ 为什么用 uv 而不是 pip?
功能 pip uv
安装速度 慢 🚀 极快(Rust 编写)
并行下载 ❌ 不支持 ✅ 支持
lock 文件支持 ❌ 需 pip-tools ✅ 内置
虚拟环境创建 需 venv ✅ 内置
多种格式支持 requirements.txt ✅ requirements.txt
, pyproject.toml
, lock

示例项目结构:
my_project/
├── app.py
├── requirements.txt
├── requirements.lock
└── .venv/

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词