Могут ли люди указать мне ресурсы на лексирование, разбор и токенизацию с помощью Python?
Я немного взломал проект с открытым исходным кодом (hotwire) и хотел сделать несколько изменений в коде, который lexes, анализирует и токенизирует команды, введенные в него. Поскольку это настоящий рабочий код, он довольно сложный и немного сложный.
Я раньше не работал над кодом для lex/parse/tokenise, поэтому я думал, что один из подходов будет заключаться в том, чтобы работать через учебник или два по этому аспекту. Я бы хотел научиться достаточно, чтобы перемещаться вокруг кода, который я действительно хочу изменить. Есть ли что-нибудь подходящее там? (В идеале это можно сделать днем, чтобы не покупать и не читать книгу драконов...)
Изменить: (7 октября 2008 г.) Ни один из нижеперечисленных ответов не дает то, что я хочу. С ними я мог генерировать парсеры с нуля, но я хочу научиться писать свой собственный базовый парсер с нуля, не используя lex и yacc или подобные инструменты. Сделав это, я смогу лучше понять существующий код.
Так может кто-то указать мне на учебник, где я могу построить базовый парсер с нуля, используя только python?