You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyAutoGUI代码在VSCode运行正常,单独执行.py报错找不到button.png

问题原因

出现这个差异是因为两种运行方式的**当前工作目录(CWD)**不一样:

  • VS Code运行Python脚本时,默认会把你打开的工作区目录设为当前工作目录,刚好你的代码和button.png都在这个目录下,用相对路径可以正常读取
  • 直接双击运行.py文件、或者在其他目录下通过命令行运行脚本时,系统默认的当前工作目录不是脚本存放的目录,相对路径'button.png'会在当前工作目录下找文件,自然就找不到报错
解决方案

不需要写死固定全路径(写死全路径会导致项目迁移、换设备运行时直接失效,非常不推荐),也没有遗漏额外配置,只需要动态获取脚本自身所在目录,拼接得到图片的绝对路径即可,代码示例如下:

import os
import pyautogui

# 获取当前脚本文件所在的绝对目录
script_root = os.path.dirname(os.path.abspath(__file__))
# 拼接得到button.png的完整路径,兼容Windows/macOS/Linux的路径格式
img_path = os.path.join(script_root, 'button.png')

buttonlocation = pyautogui.locateCenterOnScreen(img_path)

如果你不想修改代码,也可以在运行脚本前,先通过命令行cd到脚本所在的文件夹,再执行python 你的脚本名.py,也能正常读取到图片。


内容的提问来源于stack exchange,提问作者Nico1300

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 15:27:05