UV工具学习笔记

UV工具学习笔记

这两天体验了一下Python的UV依赖管理工具,着实惊艳,比 pip 原生安装确实快了N倍,所以准备后续平替导入到项目中,在这里记录一下常用知识。

一、安装UV工具

建议全局安装python后,使用 pip install uv 即可。

二、Pycharm搭配UV使用

首先先按照以下步骤结合UV工具创建虚拟环境。



上述操作完成后,会在项目下生成 .venv 目录和 pyproject.toml 文件。

鼠标任意文件右键,打开控制台会发现已经进入了虚拟环境,即 UV 环境搭建成功。


三、UV常用指令

1、原生pip操作, 只需要在前面加上 uv 即可,无缝切替使用
复制代码
uv pip install xxx                          # 安装某个包
uv pip install -r requirements.txt          # 根据requirements文件一次性安装依赖包
uv pip freeze > requirements.txt            # 导出现有环境依赖到 requirements.txt
2、UV管理依赖包,通过 pyproject.toml 和 uv.lock 文件
复制代码
uv add 包名                 # 安装并写入 pyproject.toml
uv add -r requirements.txt  # 根据 requirements.txt 的内容一次性安装
uv remove 包名              # 卸载包
uv export --format requirements-txt > requirements.txt  # 导出到 requirements.txt
uv sync                     # 根据 uv.lock 精确还原环境

上述命令会把使用 pyproject.toml 和 uv.lock 文件 进行管理,其中 pyproject.toml 是概要记录,也就是你主动装了那个包就记录哪个,而 uv.lock 文件记录了包的版本及其依赖关系包。

如果需要创建新环境,可以使用 uv sync 命令快速同步环境。

3、项目管理

复制代码
uv init                     # 创建虚拟环境并初始化 .venv文件夹和 pyproject.toml文件
uv init xxx                 # 创建项目
uv venv --python 3.11       # 新建python环境
uv python list              # 查看本地有哪些环境
uv python pin 3.11          # 使用新建环境(这个是全局的,不像conda每次都要重新指定)

其它操作,用到再补充,可参考官网。

4、配置国内镜像源

设置环境变量 UV_DEFAULT_INDEX 即可,以下是windows和ubuntu下全局设定的方法。

复制代码
# windows(管理员权限执行cmd)
setx UV_DEFAULT_INDEX "https://pypi.tuna.tsinghua.edu.cn/simple" /M

# ubuntu
echo 'export UV_DEFAULT_INDEX ="https://pypi.tuna.tsinghua.edu.cn/simple"' >> ~/.bashrc
source ~/.bashrc

以上就是本次的UV工具学习笔记。

相关推荐
启观川4 小时前
数据结构与算法 -第 3 章 常用算法-动态规划
数据结构·笔记·python·算法
辣知4 小时前
辣知·化智77 三千年接力写就的一本书
学习
一木 之林4 小时前
Dify学习笔记 01 · 平台入门与实战:部署、五类应用、RAG与MCP(第1-16集)
人工智能·笔记·学习·计算机视觉
weixin_448119945 小时前
Datawhale Easy Data × AI:构建知识与记忆驱动的 Agent笔记8
人工智能·笔记·react.js
摸鱼 特供版5 小时前
一款边录边标注的轻量截图录屏工具
windows·学习·电脑·音视频·软件需求
陈年老古董5 小时前
Hive 函数学习笔记(下):窗口函数与经典案例
hive·笔记·学习
yi0116 小时前
LeetCode 643. 子数组最大平均数 I|从暴力枚举到滑动窗口
人工智能·笔记·python·算法·leetcode·滑动窗口
罗西的思考6 小时前
[Agent Memory / 强化学习] MemPO源码学习笔记 — (6)— 奖励机制
人工智能·笔记·学习
拾饵9427 小时前
第六周第二个项目笔记:FinInsRAG 项目学习笔记(零基础版)以及简历书写
笔记·学习
han68897 小时前
selenium之实战
笔记·python·selenium·测试工具·自动化