词法错误:遇到:“”(0),之后:“”

时间:2011-06-28 03:05:07

标签: python lexical

我需要开始处理外国字符,在这样做的时候,我认为我皇帝搞砸了文件的编码。

我得到的错误是:

Lexical error at line 1, column 8.  Encountered: "" (0), after :  ""

该文件的第一行是:

import xml.etree.cElementTree as ET

另外值得注意的是:当我将上面的行粘贴到文本区域以询问此问题并提交时,每个角色之间都会出现一个未知字符(e 我一直无法通过添加显式编码定义来解决此问题:

# -*- coding: utf-8 -*-

我也无法将文件(使用Hg)还原到以前的版本,也无法将代码复制/粘贴到新文件中,或者使用复制/粘贴的代码替换损坏的文件。

请帮忙!

1 个答案:

答案 0 :(得分:3)

如果它确实是零字符,你可能会发现你注入了一些UTF-16 / UCS-2文本。特定的Unicode编码在每个ASCII字符之间都有一个零字节。

找出答案的最佳方法是使用od -xcb myfile.py之类的文件对文件进行十六进制转储。

如果 这个案例,那么你需要用能够看到这些字符的东西编辑文件,并修复它们。

vi将是我的第一选择(因为那是我习惯的)但我不想与Emacs光明会开始任何神圣的战争。在vi中,他们很可能会显示为^@个字符。