
pyautogui 导入失败通常源于 python 解释器与模块安装路径不匹配,尤其在多版本 python 共存或使用 windows 应用商店版 python 时。本文提供系统级环境变量修复方案,并补充更可靠、推荐的替代方法。
PyAutoGUI 是一个功能强大的自动化库,但其导入报错(如 ModuleNotFoundError: No module named 'pyautogui')往往并非代码问题,而是环境配置失配所致。你截图中显示的错误,结合你已尝试重装、清理多版本 Python、配置 VS Code 解释器等操作,基本可定位为:当前运行的 Python 解释器未将 pyautogui 的实际安装位置纳入模块搜索路径(sys.path)。
⚠️ 注意:Windows 应用商店安装的 Python(如 PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0)默认将第三方包安装到用户专属缓存路径(如 LocalCache\local-packages\...),而非传统 site-packages,且该路径不会自动加入 PATH 或 PYTHONPATH —— 这正是手动添加环境变量的根本原因。
✅ 推荐解决方案(按优先级排序)
1. 【首选】使用 python -m pip install 确保安装到当前解释器
在 VS Code 终端或命令行中,先确认并激活目标 Python 环境,再执行:
# 查看当前使用的 Python 路径(关键!) where python # 或 python -c "import sys; print(sys.executable)" # 使用该 Python 对应的 pip 安装(避免 pip 与 python 版本错配) python -m pip install --upgrade pip python -m pip install pyautogui
✅ 此法强制 pip 将包安装到 python 可识别的 site-packages,无需手动改环境变量。
2. 【备用】正确配置系统环境变量(针对应用商店版 Python)
若仍需手动配置(例如调试需要全局访问):
打开「系统属性」→「高级」→「环境变量」;
在 “系统变量” 区域找到 Path,点击「编辑」→「新建」;
-
粘贴 Scripts 目录路径(非 site-packages!):
C:\Users\\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\Scripts? 提示:可通过 python -m site --user-base 获取基础路径,再拼接 \Scripts;或运行 pip show pyautogui 查看 Location 后向上两级 + \Scripts。
重启 VS Code(必须!)使新环境变量生效。
3. 【根治】切换为官方 CPython 安装(强烈建议)
Windows 应用商店版 Python 存在路径隔离、权限限制和兼容性问题。推荐:
- 卸载应用商店版 Python;
- 从 python.org 下载 Windows x86-64 executable installer;
- 安装时勾选 ☑ Add Python to PATH;
- 重启终端后验证:python -c "import pyautogui; print(pyautogui.__version__)"。
? 验证是否成功
在 Python 中运行以下代码确认环境就绪:
import sys
print("Python executable:", sys.executable)
print("Python path:", sys.path[:3]) # 查看前3个搜索路径
try:
import pyautogui
print("✅ PyAutoGUI imported successfully!")
print("Version:", pyautogui.__version__)
except ImportError as e:
print("❌ Import failed:", e)? 总结
- ❌ 不要仅依赖 pip install pyautogui 而不确认 pip 对应的 Python;
- ✅ 优先使用 python -m pip install 锁定解释器;
- ⚠️ 手动加 PATH 是临时方案,治标不治本;
- ? 长期开发请使用官方 Python 安装包,规避系统级兼容陷阱。
完成上述任一推荐步骤后,VS Code 中的 import pyautogui 将立即生效,无需重启系统。










