跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Python

uv 安装多版本 Python 及虚拟环境使用指南(替代 pyenv + pip)

综述由AI生成uv 工具的安装与核心用法。uv 是由 Astral 推出的高性能 Python 工具,旨在替代 pyenv、venv 和 pip 的组合。内容涵盖通过 curl 脚本快速安装、多版本 Python 的管理与切换、虚拟环境的创建与激活、以及使用 uv pip 进行依赖管理的完整流程。此外还对比了 uv 与传统工具的性能差异,提供了标准项目工作流示例和常见问题的解决方案。对于追求开发效率的团队,uv 能显著简化环境配置并提升构建速度。

Ne0发布于 2026/3/16更新于 2026/6/1117 浏览

uv 安装多版本 Python 及虚拟环境使用指南

适用系统:Ubuntu / Linux / macOS / Windows 测试环境:Ubuntu 20.04, Python 3.8 ~ 3.13

一、为什么选择 uv?

uv 是 Astral(ruff 作者团队)推出的新一代 Python 工具,核心目标是统一并简化现有的 Python 开发流程。

简单来说,它试图整合 pyenv、venv 和 pip 的功能,同时利用 Rust 带来显著的性能提升。对于追求效率的开发者来说,这意味着更少的依赖配置和更快的执行速度。

核心优势

  • 极速:基于 Rust 编写,安装和运行速度远超传统工具。
  • 统一管理:支持在同一机器上安装和管理多个 Python 版本,互不干扰。
  • 全功能替代:内置虚拟环境管理,完全兼容 pip 命令。
  • 轻量级:单一二进制文件,无需复杂的环境依赖。
  • IDE 友好:与 VS Code、PyCharm 等主流编辑器完美集成。

二、安装 uv

方式一:官方脚本(推荐)

这是最快捷的方式,适用于大多数 Linux 和 macOS 用户。

curl -LsSf https://astral.sh/uv/install.sh | sh

安装完成后,记得刷新环境变量:

source ~/.bashrc

验证安装是否成功:

uv --version

方式二:Cargo 安装

如果你已经安装了 Rust,也可以通过 Cargo 直接安装,但通常不如官方脚本方便。

cargo install uv

三、管理 Python 版本

查看可用版本

在安装之前,我们可以先看看有哪些版本可供下载:

uv python list

输出示例:

3.8.18 3.9.19 3.10.14 3.11.9 3.12.3 3.13.0

安装指定版本

你可以按需安装特定版本,甚至一次性安装多个版本共存。

# 安装 Python 3.12
uv python install 3.12

# 批量安装多个版本
uv python install 3.10 3.11 3.13

⚠️ 注意:uv 安装的 Python 版本独立于系统自带版本,不会覆盖系统环境。

查看已安装版本

uv python list --installed

默认存储路径通常在 ~/.local/share/uv/python/,每个版本都有独立的目录结构。

四、创建与管理虚拟环境

创建虚拟环境

在项目目录下初始化虚拟环境非常简单:

cd your_project
uv venv

默认情况下,它会使用最新安装的 Python 版本,并在当前目录生成 .venv 文件夹。

指定 Python 版本

为了保持项目一致性,建议显式指定 Python 版本:

# 使用 Python 3.12
uv venv --python=3.12 .venv

# 使用 Python 3.10
uv venv --python=3.10 .venv

📌 建议:统一使用 .venv 作为虚拟环境目录名,便于团队协作识别。

激活与退出

# 激活环境
source .venv/bin/activate

# 激活后提示符会显示 (.venv)

# 退出环境
deprecate

五、包管理:替代 pip

uv 提供了与原生命令高度兼容的包管理接口,速度更快。

安装依赖

uv pip install requests flask

从 requirements.txt 安装

uv pip install -r requirements.txt

查看与导出

# 查看已安装包
uv pip list

# 导出为 requirements.txt
uv pip freeze > requirements.txt

六、标准项目工作流示例

下面是一个从零开始搭建项目的完整流程,供参考:

# 1. 创建项目目录
mkdir my_project
cd my_project

# 2. 创建 Python 3.12 虚拟环境
uv venv --python=3.12 .venv

# 3. 激活环境
source .venv/bin/activate

# 4. 安装核心依赖
uv pip install fastapi uvicorn

# 5. 运行程序
python main.py

七、高级用法

不激活环境直接运行脚本

有时候我们不想手动激活环境,可以直接用 uv run 执行:

# 使用默认环境
uv run python script.py

# 指定 Python 版本
uv run --python=3.12 python script.py

uvx:临时运行工具

uvx 允许你临时运行任何 Python 工具,无需预先安装到环境中,非常适合 CI 或一次性任务。

uvx black .
uvx ruff check .
uvx pytest

特点包括:不污染环境、用完即走、适合本地格式化检查。

八、对比总结

功能uvpyenvvenv
安装 Python✅✅❌
虚拟环境✅❌✅
pip 管理✅❌❌
速度🚀🚀🚀慢中
单工具✅❌❌

对于新项目,直接使用 uv 可以大幅减少环境配置的复杂度。

九、常见问题

IDE 找不到解释器

如果 VS Code 或 PyCharm 无法自动识别虚拟环境,请手动指向以下路径:

项目目录/.venv/bin/python

创建失败

若 uv venv 报错,请先确认目标 Python 版本是否已安装:

uv python list --installed

系统缺少 Python 3.12?

不用担心,uv 会从官方源拉取预编译的二进制包,不依赖系统仓库中的 Python 版本。

十、结语

uv 代表了 Python 工具链的未来方向,它将原本分散的工具整合成了一个高效的整体。虽然迁移成本极低,但对于新启动的项目,强烈建议直接采用 uv 来管理环境和依赖,告别繁琐的 pyenv 配置。

目录

  1. uv 安装多版本 Python 及虚拟环境使用指南
  2. 一、为什么选择 uv?
  3. 核心优势
  4. 二、安装 uv
  5. 方式一:官方脚本(推荐)
  6. 方式二:Cargo 安装
  7. 三、管理 Python 版本
  8. 查看可用版本
  9. 安装指定版本
  10. 安装 Python 3.12
  11. 批量安装多个版本
  12. 查看已安装版本
  13. 四、创建与管理虚拟环境
  14. 创建虚拟环境
  15. 指定 Python 版本
  16. 使用 Python 3.12
  17. 使用 Python 3.10
  18. 激活与退出
  19. 激活环境
  20. 激活后提示符会显示 (.venv)
  21. 退出环境
  22. 五、包管理:替代 pip
  23. 安装依赖
  24. 从 requirements.txt 安装
  25. 查看与导出
  26. 查看已安装包
  27. 导出为 requirements.txt
  28. 六、标准项目工作流示例
  29. 1. 创建项目目录
  30. 2. 创建 Python 3.12 虚拟环境
  31. 3. 激活环境
  32. 4. 安装核心依赖
  33. 5. 运行程序
  34. 七、高级用法
  35. 不激活环境直接运行脚本
  36. 使用默认环境
  37. 指定 Python 版本
  38. uvx:临时运行工具
  39. 八、对比总结
  40. 九、常见问题
  41. IDE 找不到解释器
  42. 创建失败
  43. 系统缺少 Python 3.12?
  44. 十、结语
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 腾讯云轻量应用服务器部署 OpenClaw 接入 QQ 飞书指南
  • 全排列与回溯算法详解:LeetCode 经典题目解析
  • Qt Creator配置AI编程插件GitHub Copilot
  • 普通程序员大模型(LLM)学习指南:构建全面知识体系路径
  • NISP 国家信息安全水平考试介绍与证书价值分析
  • 无需部署服务器,利用内网穿透实现本地服务对外演示
  • Luma AI Dream Machine 视频生成技术解析与使用指南
  • AI 创作实战指南:从提示词工程到商业变现逻辑
  • 一卡通核心交易平台国产数据库实践:架构、迁移与高可用
  • 每周学习总结:健康、文档搭建与算法练习
  • Ubuntu 24.04 安装搜狗输入法教程
  • Qwen2 大模型微调实战:基于指令微调的文本分类
  • 企业级 Agent 构建实战:从 RAG 到自主智能体的全栈架构
  • OpenClaw 多 Agent 架构与飞书机器人对接实战
  • AI Coding 提效实战:从工具到思维的全面升级
  • 飞牛 NAS 开启 SSH 连接方法及笔记本息屏操作
  • Live VLM WebUI 实时视觉语言模型测试工具
  • 临床智能体 AI 与环境感知 AI 融合:基于 Python 的医疗自然语言处理
  • GitBook 插件实现顶部导航配置实战
  • FLOAT:基于流匹配的音频驱动说话者头像生成模型

相关免费在线工具

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online