当前位置: 代码迷 >> 综合 >> SyntaxError: Non-ASCII character ‘\xe5‘ in file ../utils/load_data.py on line 11, but no encoding de
  详细解决方案

SyntaxError: Non-ASCII character ‘\xe5‘ in file ../utils/load_data.py on line 11, but no encoding de

热度:98   发布时间:2023-12-12 09:11:03.0

在python3的机器上跑的代码转到python2上执行的时候出现了这个错误

SyntaxError: Non-ASCII character '\xe5' in file ../utils/load_data.py on line 11, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

出错的原因是编码的方式,Python2中默认使用ascii,Python3中默认使用utf-8,如果文件中出现了中文,python2就会报这个错误。

解决办法是在代码的第一行加

# coding:UTF-8

或者

# -*- coding:UTF-8 -*-

PS:UTF可以小写

这么做是为了声明编码方式为utf-8,就可以识别中文了。

PS:添加这句以后,代码中出现的中文就可以识别了,但是python2读取文件、写入文件、print中文等时候还是很容易出编码的问题,来回转换编码非常麻烦,如果可以的话建议还是用python3,对中文更加友好。

 

  相关解决方案