ISO-читаемый парсер для Python в Python - PullRequest
3 голосов
/ 24 декабря 2011

Я ищу парсер для Python (предпочтительно v. 2.7), написанный на понятном человеку языке Python. Производительность или гибкость не важны. Точность / правильность синтаксического анализа и ясность кода синтаксического анализатора являются здесь гораздо более важными соображениями.

Поиск в Интернете Я нашел несколько синтаксических анализаторов генераторов , которые генерируют читаемый человеком код Python, но я не нашел соответствующей грамматики Python, подходящей для любого из них (из того, что я видел, они все следуют различным соглашениям спецификации грамматики). В любом случае, даже если бы я мог найти подходящую комбинацию парсер-генератор / грамматику Python, готовый к использованию Python parser , который соответствует моим требованиям (читаемый человеком код Python), естественно, гораздо предпочтительнее.

Есть предложения?

Спасибо!

Ответы [ 2 ]

3 голосов
/ 24 декабря 2011

PyPy - это реализация Python, полностью написанная на Python.Я не эксперт, но вот ссылка на их парсер, который, очевидно, был написан на самом Python:

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

2 голосов
/ 24 декабря 2011

Я думаю, вы должны инвестировать свои усилия в ast . Отрывок из документации по питону.

Модуль ast помогает приложениям Python обрабатывать деревья Абстрактная синтаксическая грамматика Python. Сам абстрактный синтаксис может меняться с каждым выпуском Python; этот модуль помогает выяснить программно, как выглядит текущая грамматика.

...