python - 如何处理标记化错误?

标签 python tokenize stringio

请在下面找到我用来标记字符串的代码段。

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))

我希望忽略此类错误并能够完成标记化过程。我有很多数据,所以我可以接受因这些错误而丢失部分数据。但是,我不确定如何编写能够实现所需功能的代码。有人可以帮我解决一下代码吗?

谢谢。

编辑1:-

尝试

except tokenize.TokenError:
    pass

我收到以下错误消息

    except tokenize.TokenError:
 NameError: name 'tokenize' is not defined

最佳答案

请注意,您的错误消息显示为tokenize.TokenError。这就是您的代码引发的Exception 类型。要捕获错误,请使用 try... except block 。要跳过错误,您只需将 pass 放入 except block 中即可。

import tokenize
try:
    strList = list(token[STRING] for token in tokenize.generate_tokens(StringIO(line).readline) if token[STRING])
except tokenize.TokenError:
    pass

关于python - 如何处理标记化错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3399306/

相关文章:

python - Python 中的敏捷软件开发

java - 在 Java 中将字符串转换为 token 数组

python - 将图像从 StringIO 存储到文件会创建扭曲的图像

string - 字符串标记化程序过滤器,例如Elasticsearch中的Shingle

python - 是否可以倒带 python StringIO 内存文件?

python - 使用 Pillow 和 Python 3 从 RGB 列表创建图像

python - 无法将_keys发送到后台窗口。错误: AttributeError: Neither GUI element (wrapper) nor wrapper method 'send_keys' were found (typo?)

python - 写代码时Python字符串中的特殊字符

Python:快速从多个(>400)二值图像中获取边缘

python - 将计数器转换为具有链接列表值的哈希表