成功解决 “\ufeffimport sys“ SyntaxError: invalid character in identifier
解决问题
我们在运行Python脚本的时候,报了如下的错误:
"\ufeffimport sys" SyntaxError: invalid character in identifier。
解决思路
\ufeff 是一个 Unicode字符,名为字节顺序标记(Byte Order Mark, BOM)。
为什么会出现 \ufeff?
-
文件保存时的编码设置:
例如,用 Windows 记事本保存 UTF-8 文件时,默认添加 BOM。 -
跨平台兼容性问题:
在 Linux/macOS 或编程工具(如 Python)中读取带有 BOM 的文件时,可能会将其视为文件内容的一部分,导致首行出现 \ufeff。
解决方法
我们使用vs code打开出问题的Python脚本无法看到\ufeff这个Unicode字符:
于是,我们换一个文本编辑器(Notepad++)打开这个Python脚本,发现可以看到多的字符:
于是,我们在Notepad++上删除多余的字符,并保存,问题得以解决。