python uv的了解与使用

用过python,知道python包管理一般都是使用默认的pip,最近在看一些智能体的开源项目,发现现在很多项目都使用uv进行包的管理,今天跟风学一下uv的概念和使用。

uv是什么?有什么优势?

uv 是一个Python 依赖管理工具,类似于 pip 和 conda,但它更快、更高效,并且可以更好地管理 Python 虚拟环境和依赖项。它的核心目标是替代 pip、venv 和 pip-tools,提供更好的性能和更低的管理开销。

优势:

(1)速度更快:相比 pip,uv 采用 Rust 编写,性能更优。

(2)支持 PEP 582:无需 virtualenv,可以直接使用 pypackages 进行管理。

(3)兼容 pip:支持 requirements.txt 和 pyproject.toml 依赖管理。

(4)替代 venv:提供 uv venv 进行虚拟环境管理,比 venv 更轻量。

(5)跨平台:支持 Windows、macOS 和 Linux。

使用

1、安装uv

shell 复制代码
pip install uv

2、uv安装python的依赖:

shell 复制代码
uv pip install package_name # 等价于 pip install package_name

3、创建虚拟环境

shell 复制代码
uv venv env_name

4、激活虚拟环境

shell 复制代码
source env_name/bin/activate  # Linux/macOS
env_name\Scripts\activate     # Windows

5、安装依赖文件

shell 复制代码
uv pip install -r requirements.txt

6、如果项目中包含 pyproject.toml,你可以直接运行:

shell 复制代码
uv run python code.py # 等价于pip install -r requirements.txt & python code.py

7、初始化

shell 复制代码
# 创建项目目录
uv init project
cd project
uv add  dependency # 添加依赖
相关推荐
caimo11 分钟前
Java无法访问网址出现Timeout但是浏览器和Postman可以
java·开发语言·postman
三体世界38 分钟前
Qt从入门到放弃学习之路(1)
开发语言·c++·git·qt·学习·前端框架·编辑器
悟能不能悟1 小时前
jdk25结构化并发和虚拟线程如何配合使用?有什么最佳实践?
java·开发语言
柠檬07111 小时前
MATLAB相机标定入门:Camera Calibration工具包详解
开发语言·数码相机·matlab
卓码软件测评1 小时前
借助大语言模型实现高效测试迁移:Airbnb的大规模实践
开发语言·前端·javascript·人工智能·语言模型·自然语言处理
熙客1 小时前
Java8:Lambda表达式
java·开发语言
小咕聊编程1 小时前
【含文档+PPT+源码】基于java web的篮球馆管理系统系统的设计与实现
java·开发语言
我狸才不是赔钱货2 小时前
Python的“环境之殇”:从Venv到Conda的终极抉择
开发语言·python·conda
努力进修2 小时前
Rust 语言入门基础教程:从环境搭建到 Cargo 工具链
开发语言·后端·rust
程序员爱钓鱼3 小时前
Python编程实战 - 函数与模块化编程 - 参数与返回值
后端·python·ipython