当前位置: 代码迷 >> 综合 >> SyntaxError: Non-UTF-8 code starting with ‘\xc6‘ in file xxxbut no encoding declared
  详细解决方案

SyntaxError: Non-UTF-8 code starting with ‘\xc6‘ in file xxxbut no encoding declared

热度:95   发布时间:2023-11-26 05:52:29.0

程序中出现中文,运行的时候出现如下错误:

SyntaxError: Non-UTF-8 code starting with '\xc6' in file F:\UsualTasks\PythonPro\test_code.py on line 22, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

翻译一下:

语法错误:第 22 行文件 F:\UsualTasks\PythonPro\test_code.py 中以 '\xc6' 开头的非 UTF-8 代码,但未声明编码; 有关详细信息,请参阅 http://python.org/dev/peps/pep-0263/

意思是“让声明编码,若不懂,去参阅”。听人劝,吃饱饭,我们就去瞧瞧,看看。

 首先查看一下文件的编码格式,如下图。发现这个项目的编码方式是GBK,确实不是UTF-8

 那改一下Project Encoding试试,看看能不能行。

 然而,并不可行,大大的红色

但是,经过一波小探索,我发现在修改Project Encoding之前将代码Ctrl+C复制下来,然后在重新粘贴,就可以解决这个问题。

那再去看看要参阅的文档,看看更多的details。

 查看python3.9.6的官方文档,发现python默认的编码已经是UTF-8

 经过测试发现,在文件的第一行写下特殊注释:

# -*- coding: GBK -*-
# -*- coding: UTF-8 -*-
# coding=gbk

上面三个特殊注释,任意一个添加到代码的第一行都能将问题解决,无需在setting中修改Project Encoding


 

  相关解决方案