使用 uv 工具在 Windows 系统快速下载安装与切换 Python

一、环境准备

在开始之前,请确保你拥有对 Windows 系统的管理员权限,以便安装软件并修改 PATH 环境变量。整个流程无需预装 Python,uv 会在运行时自动下载并管理所需版本#。

二、安装 uv

1. 使用官方独立安装脚本

uv 官方提供跨平台的独立安装脚本,可在 Windows PowerShell 中执行#:

powershell 复制代码
PS> powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

该命令会在用户目录下创建 uv.exe 并将其添加至 ~/.local/bin(如需,可手动将该路径加入系统 PATH)#。

2. 验证安装

安装完成后,可在任意终端运行:

bash 复制代码
uv version

若输出 uv 的版本号,则表示安装成功。

三、使用 uv 安装 Python

1. 查看可用和已安装的 Python 版本

bash 复制代码
uv python list

该命令会列出所有本地已安装及可供下载的 Python 版本#。

如需过滤特定版本,可在命令后添加版本号:

bash 复制代码
uv python list 3.12

仅显示与 3.12 系列相关的版本。

2. 安装特定 Python 版本

bash 复制代码
uv python install 3.12

该命令会在默认的管理目录(%USERPROFILE%\.local\share\uv\python)下载并安装 CPython 3.12.x 托管版本#。

若需同时安装多个版本,可依次指定:

bash 复制代码
uv python install 3.10 3.11 3.12

3. 重装和卸载

  • 重装所有已管理版本 :

    bash 复制代码
    uv python install --reinstall
  • 卸载指定版本 (示例):

    bash 复制代码
    uv python uninstall 3.11

四、项目级别的 Python 版本管理

1. 永久锁定(pin)

进入项目根目录,运行:

bash 复制代码
uv python pin 3.12

该命令会在当前目录生成或更新 .python-version,后续所有 uv 命令(如 uv venv、uv run、uv pip)均优先使用该版本#。

2. 设置为windows python版本

下面命令会创建一个用户环境变量PYTHON-BIN, 并且指向uv python find结果目录部分

cmd 复制代码
for /f "tokens=*" %i in ('uv python find') do setx PYTHON-BIN "%~dpi\"

然后请手动在用户环境变量python中增加%PYTHON-BIN%, 务必增加到最上面, 如图

重启之后, 命令行就可以正确的使用python了

后续如果要切换系统默认python版本, 比如3.10版本

cmd 复制代码
uv python pin 3.10
for /f "tokens=*" %i in ('uv python find') do setx PYTHON-BIN "%~dpi\"

如此就实现, 使用uv来切换windows的python版本

3 临时指定

如需对单次命令使用不同版本,无需修改配置,可这样执行:

bash 复制代码
uv run --python 3.10 python -c "import sys; print(sys.version)"

该命令仅在本次执行时调用 Python 3.10,不会改变项目设置#。

4. 验证当前生效版本

bash 复制代码
uv python find

输出当前解析后将被调用的 Python 可执行文件路径;加上 --system 可仅在系统路径中查找而忽略虚拟环境#。

五、常见问题

  • 权限错误 :如出现"Permission Denied",请以管理员身份重启 PowerShell 或调整 ~/.local 目录权限。
  • 环境变量未生效 :确保 ~/.local/bin 已加入系统 PATH,并重启终端。
  • 下载失败 :检查网络并确保能访问 https://astral.sh。

六、总结

通过上述步骤,您可以在全新 Windows 系统中快速部署 uv,并使用 uv 高效地安装、切换和管理多个 Python 版本,同时支持项目级别的版本锁定与虚拟环境创建,为 Python 开发提供灵活可靠的环境管理体验。

相关推荐
数字融合6 分钟前
透明化视频孪生虚实映射一体化融合技术
人工智能·python·数码相机
jack1868924 分钟前
Lovable.Dev 全栈应用快速落地实战指南
python
华研前沿标杆游学43 分钟前
【标杆研学】走进茅台集团|对标学习长期主义与匠心精神
python
GitFun1 小时前
KDJ vs RSI:11年数据实测,金叉死叉输了48个点
python·股票·量化交易
李可以量化2 小时前
从零读懂配对交易(上):从套利本源到配对交易的核心逻辑
python·区块链·量化交易·通达信·qmt
CCblandy2 小时前
HTTP 长连接 3 类故障实测:[WinError 10053]、99 个 TIME_WAIT、69 次多余握手,4 种对策怎么选
后端·python·网络协议·http·云原生·性能优化·架构
wangchunyu1142 小时前
Python 数据可视化实战入门教程
开发语言·python·信息可视化
蜗牛互联网2 小时前
Python Agent工具调用的白名单、参数校验与审批门禁
java·服务器·前端·人工智能·后端·python
SL_staff2 小时前
当规则引擎开始‘懂业务’:JVS-Rules金融风控四大原生能力拆解
java·python·全栈
蚰蜒螟3 小时前
从内核启动到 Java NIO:一次 socket accept 的源码串联之旅
java·python·nio