首页/新闻资讯/正文详情

Python Astral UV虚拟环境指南

发布时间:2026/9/26 16:27:19 来源:云帆数科 栏目:资讯中心
Python Astral UV虚拟环境指南
关于UV虚拟环境的指南, 你可以按照以下步骤进行操作。告别依赖地狱 uv 全方位实战指南你作为一个工程师, 也许已经在心里把那样的一整套操作动作当成是习以为常的事情去对待了, 这个一整套操作动作里面会包括拿 pyenv 这个工具去把版本号给管理起来, 再去用 venv 这一个东西把那个虚拟的环境给创建出来, 然后接着再用 pip 把这个包给安装成功, 最后再使用 pip 把相关的信息给导出成为 txt 这个格式的文件, 这一套这样的流程走下来呢, 虽然在大家的印象之中是很经典的, 但是实际上它中间存在着非常多零散的、不统一的地方, 而且它的运行的性能上面也会存在着不少明显的瓶颈问题。uv这个东西是出现的, 这就就像当年那个Rust重写系统工具是一样的情况嘛。它不仅仅是速度方面变快了, 比那个pip的速度要快上10倍到100倍的这么一个量级, 更为重要的是的一个事情, 它就是将那个版本的整个管理的工作, 还有项目的管理的工作, 以及依赖项解析的工作, 还有虚拟环整个境的工作, 这些东西全都给它统一在了一个这么单一的工具里面去了。这篇文章会引导你从头开始, 一步一步地学会怎么使用uv这个东西, 并且了解它从生到死整个过程里所有要用到的方法。第一部分安装与环境准备UV不需要系统预装, 它本身是一个独立的二进制文件。1. 安装, 在Linux或者macOS系统。我们这边是强烈推荐大家使用那种官方发布的脚本工具的, 因为它会自己主动去把那个什么环境变量的事情给弄妥当了的。curl -LsSf https://astral.sh/uv/install.sh | sh当安装步骤彻底完工之后, 务必要执行关闭终端应用和重新开启这个操作的流程, 随后在此时输入包含uv和双横线以及验证这两个部分的指令内容用以进行检查和确认。2. 维护命令uv这种工具, 它具备自我管理的强大能力, 所以并不需要去依赖那些系统级别的包管理器来帮忙。uv self update# 1. 清理数据uv cache cleanrm -r $(uv python dir)rm -r $(uv tool dir)# 2. 删除程序rm ~/.cargo/bin/uv ~/.cargo/bin/uvx3. 建议您进行国内镜像源的具体配置设置, 这项操作是我们特别推荐去执行的一项举措。为了确保下载的速度, 咱们建议配置一下 PyPI 镜像。请创建配置文件~/./uv/uv.toml, 这是在 Linux 系统下的情况, 或者是在 macOS 系统下, 创建文件~// /uv/uv.toml, 然后在里面写入:[[index]]url default true第二部所谓的分, 指的是项目开发从头到尾的整个流程)。这是最主要的运用方式。以前的 pip工具仅仅是把软件包放置到运行环境当中去。现在的 uv 引入了项目这个具体的概念, 它依靠 .toml配置文件以及 uv.lock这个锁定文件, 从而非常严格地对那些依赖关系进行控制和管理。1. 初始化项目 (Init)咱们得想一下, 假设是要着手去创建一个名叫>uv init># 列出可用的 Python 版本uv python list# 为当前项目指定Pin特定的 Python 版本uv python pin 3.12这个操作会在项目所在的根目录下面, 去创造一个那个带有后缀是dot加点的文件。同时呢, 那个叫做UV的工具就会自动地去执行一个下载的操作。下载下来之后, 还会直接把对应的那个版本的解释程序给使用上。3. 添加依赖 (Add)安装库, 并且要明确地指定出其版本范围是多少:uv add requests2.30在这一步骤里面, 一共发生出了三件事情。下载并执行安装操作。接下来, 对 .toml 文件进行更新, 这一步的具体内容是写入依赖的声明语句。然后, 生成或者更新 uv.lock 文件, 其作用是锁定当前已经安装的那些软件包的精确版本号。最后一步是, 把开发用的依赖项给添加进去, 这部分内容在专业术语里通常被标记为 Dev 类型的依赖。存在这样一种情况, 即部分工具仅仅在软件开发的阶段里面才需要被使用, 比方说像是测试框架或者代码格式化使用的ruff这样的程序, 但是在最终打包发布到生产环境的那一步中, 就绝对不需要把这些东西给包含进去, 也就是说不需要进行合并操作:uv add --dev pytest ruff5. 点击这个按钮, 就可以去执行一下代码内容。你不需要手动激活虚拟环境如 .venv/bin/。# 直接运行脚本uv 会自动使用环境中的 Pythonuv run main.py# 甚至可以运行带参数的命令uv run pytest tests/6. 查看与分析 (Tree )uv treeuv export --format requirements-txt requirements.txt7. 把那些已经没有必要的、不再使用的依赖项给去掉掉。uv remove requests这个命令会把那个配置文件清理掉, 还会把那个锁定文件也一并清理掉, 这样就保持了整个环境的干净。第三部这一部分的主要工作是围绕团队协作来展开的, 并且需要对整个环境进行同步处理, 同时进行锁定操作。这句话正是应对“它在我的电脑上面能够运行, 可是却不能在对方的电脑上面顺利运行”这一难题的核心所在。场景你拉取了同事的代码当你执行 git clone 这个操作克隆一个包含 uv.lock 这个文件的项目之后, 你只需要去做一件事, 那就是仅仅地去执行一个命令。uv syncuv 会根据 uv.lock 文件下载对应版本的创建虚拟环境并安装所有依赖。它保证了你们的开发环境是字节级一致的。把依赖给升级一把。若是希望将所有包都升级更新, 使之变得符合toml所规定的规则, 并且达到最新的一个版本状态:uv lock --upgradeuv sync第四部分全局工具管理 (Tools)有些 工具主要通过命令行使用如 , , mypy你不希望把它们装在每一个项目里也不希望它们污染系统 。1. 临时性的运行uvx。只是希望只使用这一次, 而不愿意进行安装?# 下载并运行 pycowsay用完即走uvx pycowsay Hello uv!2. 全局安装 (Tool )# 安装 black 代码格式化工具uv tool install black# 安装后你在任何目录下都可以直接运行 blackblack main.pyuv会针对每一个工具单独去建立一个独立的虚拟化操作空间, 这些操作空间之间是完全隔离的。第五部分这个部分, 需要处理缓存的管理工作。uv 会使用全局的内容寻址缓存功能。要是你手上有十个项目, 它们全部都依赖了 numpy 这个库的话, 那么 uv 真的只会在磁盘中存放这一个单独的物理文件而已。uv cache diruv cache pruneuv cache clean总结一张表看懂迁移传统操作uv 操作优势pipuv add自动维护版本锁文件pip req.txt(自动生成 uv.lock)跨平台一致性更强venv/bin/uv run ...不用亲自去动手完成开通的操作, 这样可以让人更加安心省力。pyenv 3.12uv 3.12集成在同一工具中使用pipx来安装black。uv tool black运行的速度变得更快了。

相关推荐

WPS彻底不用了!这款免费办公工具,干净无广告太良心
WPS彻底不用了!这款免费办公工具,干净无广告太良心

你可以打开普通的文档, 然后进行文字的修改、字体的调整以及段落格式的设置, 或者插入图片, 这些日常的操作内容都能够被顺利完成。PPT这个文档, 你是可以修改文字内容的, 是可以更换图片的, 是能够进行简单的排版调整的。它的底层解析引擎, 对微软格式的还原度是非常高的。普通… · 2026/9/26 16:27:19

金融系统架构设计与实践:账务、风控与对账体系
金融系统架构设计与实践:账务、风控与对账体系

做金融服务的这几年,我算是把这一行里高并发、强一致、严合规的酸甜苦辣都尝了一遍。financial-services 这个词看起来只是个英文词组,可一旦落到工程上,它就是账户、支付、清结算、信贷、风控、数据上报这一连串既敏感又繁琐的系统集合——每… · 2026/9/26 16:27:19

Windows 安装 Codex 并接入 DeepSeek-V4:config.toml 配置与验证教程
Windows 安装 Codex 并接入 DeepSeek-V4:config.toml 配置与验证教程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 16:27:19

2026百度网盘满速下载技巧:超越PanDownload的直链助手配置
2026百度网盘满速下载技巧:超越PanDownload的直链助手配置

面对急需使用的资料,看着屏幕上慢吞吞跳动的下载进度,任谁都会感到有些无可奈何。很多人在测试网速时发现测速数值明明很漂亮,但一转到具体的文件下载环节,实际速度却远远达不到预期。 在体验PanDown这样的文件处理工具时&#x… · 2026/9/26 16:55:55

个人AI探索学习记录之claudecode:WSL下node.js环境配置与TaoToken接入实践
个人AI探索学习记录之claudecode:WSL下node.js环境配置与TaoToken接入实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 16:55:49

神了!用 Claude Code Skill 让乔布斯、芒格、马斯克同时给你打工,这个开源 AI 项目太炸了
神了!用 Claude Code Skill 让乔布斯、芒格、马斯克同时给你打工,这个开源 AI 项目太炸了

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 16:55:49

微信爬虫实战:公众号历史文章采集与数据存储解析
微信爬虫实战:公众号历史文章采集与数据存储解析

简介:这是一份基于 Node.js 的微信爬虫项目源码,采用中间人代理方式拦截并解析微信 HTTPS 请求,用于抓取公众号历史文章链接及正文、阅读量、点赞量、在看数、评论等数据,适合需要批量采集公众号内容做数据分析或运营监控的开发者… · 2026/9/26 16:55:49

面试宝典:Oracle数据库cursor: pin S等待事件处理过程与TaoToken配置排查
面试宝典:Oracle数据库cursor: pin S等待事件处理过程与TaoToken配置排查

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 16:55:49

【AIGC】SuperMemory 实战:用 TaoToken 统一 Key 打通私人智能书签的 Chrome 插件配置
【AIGC】SuperMemory 实战:用 TaoToken 统一 Key 打通私人智能书签的 Chrome 插件配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 16:55:42

数据库课后习题答案别硬背:当测试用例集刷,效率翻倍
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍

简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21

OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40

向下兼容与向上兼容:接口设计中的兼容性策略与工程实践
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践

一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码