必须同时添加python主目录和scripts目录到用户变量path中,否则pip等工具无法使用;修改后需重启终端生效,且需注意path长度限制、权限及powershell执行策略问题。

python 命令在 CMD 或 PowerShell 里报“不是内部或外部命令”,基本就是环境变量没配对——不是没加,就是加错位置、漏路径、或权限/长度限制拦住了。
必须加的两个路径:Python 主目录和 Scripts 目录
Windows 找python.exe 靠的是 PATH,但只加安装目录还不够,pip、pylint、venv 等工具实际在 Scripts 子目录里。漏掉它,pip --version 就会失败。
安装时勾选了
Add python.exe to PATH→ 理论上自动加了这两条,但实测 Win11 下有约 30% 概率只加了主目录,漏掉Scripts
Windows TTS (WSL2)下载在 Windows 11 上"直接发声"的 TTS(从 WSL2/TUI 调用 powershell.exe + System.Speech)。适用于用户说"说出来/读出来/语音播报/用TTS",或反馈"没声音/tts 生成的 mp3 是空的/播不出来",以及需要中文语音但 OpenClaw 内置 tts 不可用时。
手动添加时,必须同时加入:
D:\Python312\D:\Python312\Scripts\(路径以你实际安装位置为准,注意末尾反斜杠可加可不加)不要只加
D:\Python312\python.exe——PATH只接受目录,不接受具体可执行文件路径
系统变量 vs 用户变量:优先用用户变量
Win11 的PATH 分三层:系统变量(所有用户)、用户变量(当前账户)、进程变量(临时)。新手常误改系统变量,结果因权限不足写入失败,或被组策略覆盖。
- 推荐操作:在「环境变量」窗口里,只修改用户变量下的
Path - 验证是否生效:在新打开的 PowerShell 里运行
$env:Path -split ';' | Select-String 'Python'
应该能同时看到主目录和Scripts两行 - 如果已改过系统变量但无效,先删掉系统变量里的 Python 相关项,再专注修用户变量
PATH 超长、权限不足、PowerShell 执行策略这些隐形杀手
即使路径全对,也可能卡在更底层:- Windows 默认 PATH 长度上限 2048 字符,装得多的用户很容易超限 → 运行安装包自带的
Disable path length limit按钮(安装器末尾),或手动启用 LongPathsEnabled 策略 - 安装 Python 时没点“以管理员身份运行” → 用户变量可能写入失败,尤其当目标路径在
C:\Program Files\下 - PowerShell 默认执行策略为
Restricted→ 不影响python或pip本身,但后续跑.ps1脚本(比如某些 CI 工具链)会直接被拦,需提前在管理员 PowerShell 中运行Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
最常被忽略的一点:改完环境变量后,所有已打开的终端窗口都不会自动刷新 PATH。必须关掉 CMD/PowerShell/VS Code 再重开,否则永远在用旧环境。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!










