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 # 添加依赖
相关推荐
我很好我还能学12 分钟前
【面试篇 9】c++生成可执行文件的四个步骤、悬挂指针、define和const区别、c++定义和声明、将引用作为返回值的好处、类的四个缺省函数
开发语言·c++
蓝婷儿34 分钟前
6个月Python学习计划 Day 16 - 面向对象编程(OOP)基础
开发语言·python·学习
渣渣盟1 小时前
基于Scala实现Flink的三种基本时间窗口操作
开发语言·flink·scala
chao_7891 小时前
链表题解——两两交换链表中的节点【LeetCode】
数据结构·python·leetcode·链表
糯米导航1 小时前
Java毕业设计:办公自动化系统的设计与实现
java·开发语言·课程设计
糯米导航1 小时前
Java毕业设计:WML信息查询与后端信息发布系统开发
java·开发语言·课程设计
MessiGo2 小时前
Javascript 编程基础(5)面向对象 | 5.1、构造函数实例化对象
开发语言·javascript·原型模式
大霞上仙2 小时前
nonlocal 与global关键字
开发语言·python
galaxy_strive2 小时前
绘制饼图详细过程
开发语言·c++·qt
Mark_Aussie2 小时前
Flask-SQLAlchemy使用小结
python·flask