编程语言
首页 > 编程语言> > 乐兴Python资源

乐兴Python资源

作者:互联网

作为一项教育活动,我着手用Python编写Python词法分析器.
最终,我想实现一个可以自行运行的简单Python子集,因此我希望将此词法分析器用尽可能简单的Python子集编写,并尽可能少地导入.

我发现的与词法学习有关的教程(例如kaleidoscope)会向前看一个字符以确定接下来要使用的令牌,但是恐怕这对于Python来说是不够的(一方面,仅查看一个字符就无法区分分隔符或运算符,或者在标识符和关键字之间;此外,对我来说,处理缩进看起来像是一种新的野兽;等等).

我发现这个link非常有帮助,但是,当我尝试实现它时,我的代码很快就开始看起来很丑陋,并且带有许多if语句和个案工作,而且似乎这不是“正确”的方法它.

有没有什么好的资源可以帮助/教我lex这种代码(我也想完全解析它,但是首先要正确吗?)?

我上面没有使用解析器生成器,但我希望生成的Python代码使用Python的简单子集,并且还应合理地自我包含,这样我至少可以梦想拥有一种能够自我解释的语言. (例如,根据我对example的了解,如果我使用ply,我将需要我的语言来解释ply包以及自己解释,这会使事情变得更加复杂).

解决方法:

看一下http://pyparsing.wikispaces.com/,也许您发现它对您的任务很有用.

标签:lexical-analysis,python
来源: https://codeday.me/bug/20191201/2079782.html