当前位置: 首页 > ds >正文

UV工具的安装与使用

文章目录

    • 概要
    • UV的优势
    • UV工具快速使用
    • UV常用命令

介绍

        uv是一个python包管理的现代工具,它只在替代pipvirtualenv,提供更快、更高效的包安装与虚拟环境管理体验,uv是有Astral团队开发,并逐渐成为python社区中的热门替代工具。

简而言之,uv 是一个 超快的 Python 包管理器,它集成了:

  • 包安装(替代 pip)

  • 虚拟环境管理(替代 virtualenv)

  • 锁定文件(兼容 pip-tools 和 Poetry)

UV的优势

  • 🚀 极快的安装速度:基于 Rust 实现,速度比 pip 快上几十倍

  • 📦 自动创建虚拟环境:类似 Poetry,无需手动激活

  • 🔐 锁定依赖:生成 uv.lock 文件,确保可重复构建

  • 🐍 兼容性强:兼容 pyproject.toml,无缝对接现有项目

  • 📁 缓存机制优秀:充分利用缓存,加快安装流程

UV工具快速使用

1.安装 UV

如果电脑中安装过Python,可以直接使用pip命令安装:

pip install uv

2.初始化项目

  1. 创建一个空文件夹

  2. 切换到对应文件夹下,输入uv init即可初始化uv工程

uv工程默认会生成5个文件:.gitignore:git排除不需要跟踪的文件.python-version:记录当前工程的Python版本。main.py:主脚本。pyproject.toml:记录当前uv工程的依赖情况。README.md:工程的说明文件。

3.生成虚拟环境

方式一:为项目初始化一个Python虚拟环境,并且可以指定Python解释器版本

uv venv --python 3.12

方式二:可以通过以下命令直接创建工程并指定python解释器版本

uv init test_uv -p 3.12

4.激活虚拟环境

输入以下命令即可激活虚拟环境

.\.venv\Scripts\activate

UV常用命令

  • 创建和处理 Python 项目,即使用 pyproject.toml

uv init:创建新的 Python 项目。    
uv add:向项目添加依赖项。    
uv remove:从项目中删除依赖项。    
uv sync:将项目的依赖项与环境同步。    
uv lock:为项目的依赖项创建一个 lockfile。    
uv run:在项目环境中执行命令。    
uv tree:查看项目的依赖关系树。    
uv build:将项目构建到分发存档中。    
uv publish:将项目发布到包索引。
  • 安装和管理 Python 本身

uv python install:安装 Python 版本。
uv python list:查看可用的 Python 版本。
uv python find:查找已安装的 Python 版本。
uv python pin:固定当前项目以使用特定的 Python 版本。
uv python uninstall:卸载 Python 版本。
  • 执行独立的 Python 脚本,例如 example.py

uv run:运行脚本。    
uv add --script:向脚本添加依赖项    
uv remove --script:从脚本中删除依赖项

http://www.xdnf.cn/news/2666.html

相关文章:

  • 2025系统架构师---数据抽象(Data Abstraction)‌与‌面向对象架构风格
  • Android原生开发基础
  • 龙芯远程方案
  • 如何判断对一件事的认知深度?
  • Python+jieba文本分析示例:实现统计《红楼梦》中的人物并生成词云图
  • 人工智能——XGBoost 算法
  • 【2025最新Java面试八股】如何在Spring启动过程中做缓存预热?
  • 【基础篇】prometheus页面UI功能详解
  • AI翻译LangChain实现的一点有趣思考
  • 深入浅出提示词工程(结合 DeepSeek)
  • yolo-world踩坑指南
  • 服务器数据备份,服务器怎么备份数据呢?
  • 【Google Colab】利用unsloth针对医疗数据集进行大语言模型的快速微调(含跑通原代码)
  • 实现一个瀑布流布局
  • 文章记单词 | 第48篇(六级)
  • 【计算机组成原理实验】实验一 运算部件实验_加法器及计算机性能指标
  • 每日算法-250427
  • java异常
  • C++中的继承
  • 前端面试高频算法
  • 从增量式到绝对式 —— 深度理解编码器的原理与选型
  • 香港GPU显卡服务器与GPU云服务器的区别
  • linux blueZ 第六篇:嵌入式与工业级应用案例——在 Raspberry Pi、Yocto 与 Buildroot 上裁剪 BlueZ 并落地实战
  • 【遥感科普】不同波段的卫星影像分别有什么实际应用场景?
  • C语言内敛函数
  • Linux 进程替换
  • 深度解析 `FOR UPDATE`:数据库行锁的精准掌控之道
  • G1(Garbage-First)垃圾回收器与JVM内存
  • http://noi.openjudge.cn/_2.5基本算法之搜索_2152:Pots
  • C++ 数组长度sizeof(a)/sizeof(a[0])(易错)