用于Python的Python人类可读解析器

时间:2011-12-24 15:12:25

标签: python parsing recursive-descent

我正在寻找用人类可读的Python编写的Python解析器(最好是2.7版)。性能或灵活性并不重要。解析的准确性/正确性和解析器代码的清晰度在这里是更重要的考虑因素。

在线搜索我发现了一些生成人类可读Python代码的解析器生成器,但是我没有找到相应的Python语法来与它们中的任何一个一起使用(从我所看到的,他们都遵循不同的语法规范惯例)。无论如何,即使我能找到合适的解析器生成器/ Python语法组合,一个符合我要求(人类可读的Python代码)的现成Python 解析器自然要好得多。

有什么建议吗?

谢谢!

2 个答案:

答案 0 :(得分:3)

PyPy是一个完全用Python编写的Python实现。我不是专家,但这里是他们解析器的链接 - 显然 - 用Python本身编写:

https://bitbucket.org/pypy/pypy/src/819faa2129a8/pypy/interpreter/pyparser

答案 1 :(得分:2)

我认为你应该在ast投入你的精力。摘自python docs。

  

ast模块可以帮助Python应用程序处理树的   Python抽象语法语法。抽象语法本身可能   每个Python版本都会改​​变;这个模块有助于找出答案   以编程方式看当前语法是什么样的。