请在下面找到我用来标记字符串的代码段。
strList = list(token[STRING] for token in generate_tokens(StringIO(line).readline) if token[STRING])
我收到的错误如下: -
raise TokenError, ("EOF in multi-line statement", (lnum, 0))
tokenize.TokenError: ('EOF in multi-line statement', (2, 0))
我希望忽略此类错误,并能够完成标记化过程。我有很多数据,所以我可以将部分数据丢失给这些错误。但是,我不确定如何编写能够实现所需功能的代码片段。有人可以帮我解决这个问题吗?
谢谢。
EDIT1: -
尝试
except tokenize.TokenError:
pass
我收到以下错误消息
except tokenize.TokenError:
NameError: name 'tokenize' is not defined
答案 0 :(得分:3)
请注意,您的错误消息显示为tokenize.TokenError
。这是您的代码提出的Exception
类型。要捕获错误,请使用try...except
块。要跳过错误,您只需将pass
放入except
块。
import tokenize
try:
strList = list(token[STRING] for token in tokenize.generate_tokens(StringIO(line).readline) if token[STRING])
except tokenize.TokenError:
pass