【发布时间】:2013-02-18 01:18:49
【问题描述】:
我正在使用 generate_token 函数来标记特定代码。问题是我无法添加“打印”和“输入”作为关键字。它将它们作为 NAME 而不是关键字返回。如何添加这些令牌?
import token
import tokenize
try:
from cStringIO import StringIO
except:
from io import StringIO
file = open(filename)
characters = file.read()
file.close()
code_reader = StringIO(characters).readline
for num, (ttyp, ttok, _, _, _) in enumerate(tokenize.generate_tokens(code_reader)):
print("%5d %15s %r" % (num, token.tok_name[ttyp], ttok))
【问题讨论】:
-
PS:你为什么要把文件读成一个字符串,然后再用StringIO把它变成一个类似文件的东西?
标签: python compiler-construction token tokenize