在Visual Studio运行Python PySimpleGUI程序报UnicodeDecodeError求助
问题原因
你遇到的是Python源文件编码不匹配导致的解码错误,Python3默认以UTF-8编码读取.py源文件,当你的源文件保存时使用了GBK、Latin-1等非UTF-8编码,且文件中包含非ASCII字符时,就会触发该UnicodeDecodeError报错。
解决方案
按以下优先级逐一排查即可:
- 修正源文件保存编码:用Visual Studio打开你的
CHAP.py文件,点击顶部菜单「文件」→「高级保存选项」,在编码下拉框选择「Unicode (UTF-8 带签名) - 代码页 65001」,确认后重新保存文件再运行程序。 - 添加编码声明:在你的.py文件最顶部(所有代码的第一行)添加编码声明,强制Python以UTF-8读取文件:
# -*- coding: utf-8 -*-
- 测试特殊字符影响:你代码中使用了德语字符串作为控件Key、按钮文本,可先将这些字符串暂时替换为纯英文测试运行是否正常,排除字符编码问题后再改回所需内容。
- 排查调试器配置问题:如果直接在系统CMD中进入项目目录执行
python CHAP.py可以正常启动,说明是Visual Studio调试器编码配置错误,进入VS「工具」→「选项」,搜索「编码」,将调试控制台的编码修改为UTF-8即可。
额外注意:你提供的代码中
search_images、load_image两个函数未定义,运行前需要先补全这两个函数的实现,否则会触发NameError报错。
内容的提问来源于stack exchange,提问作者JKR
相关产品推荐
相关产品推荐

