项目场景:
使用Spyder出现Python问题:
问题描述:
UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xa8 in position 45: illegal multibyte sequence
This command failed to be executed because an error occurred while trying to get the file code from Spyder's editor. The error was:
An exception has occurred, use %tb to see the full traceback.
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa8 in position 45: illegal multibyte sequence
原因分析:
GKB编码问题,可改为UTF-8编码
解决方案:
先尝试重启程序,也许报错就解决了
如果还未解决请修改文件spydercustomize.py为:
该文件在Anaconda3安装目录下(…为前面的安装路径):C:\...\Anaconda3\Lib\site-packages\spyder_kernels\customize\spydercustomize.py
默认安装路径:C:\ProgramData\Anaconda3\Lib\site-packages\spyder_kernels\customize\spydercustomize.py
def get_file_code(filename):
"""Retrive the content of a file."""
# Get code from spyder
try:
file_code = frontend_request().get_file_code(filename)
except (CommError, TimeoutError):
file_code = None
if file_code is None:
with open(filename, 'r',encoding='utf-8') as f: #增加 ,encoding='utf-8'
return f.read()
return file_code
重启程序!