Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 23, 2010 22:41:04

more
От:
Зарегистрирован: 2010-02-23
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Генерация исходного кода по AST

Помогите разобраться, возможно-ли решить эту проблему с использованием стандартной библиотеки?
Есть AST дерево полученное с помощью такого кода:

import compiler
tree = compiler.parseFile("source.py")
Как обратно из tree получить исходный код?
Должно получиться что-то похожее на содержимое файла “source.py”.



Отредактировано (Фев. 23, 2010 22:43:04)

Офлайн

#2 Фев. 23, 2010 23:47:21

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

Генерация исходного кода по AST

никогда ast не юзал, но вчера наткнулся на интересную статью http://www.dalkescientific.com/writings/diary/archive/2010/02/22/instrumenting_the_ast.html , думаю поможет)

Офлайн

#3 Фев. 24, 2010 11:12:39

more
От:
Зарегистрирован: 2010-02-23
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Генерация исходного кода по AST

slav0nic
но вчера наткнулся на интересную статью
Вот правильно автор пишет, что для целей, указанных в статье, стоит использовать XSLT.

Но, мне статья все равно не помогла. Хотя на этапе разработки библиотеки ast метод “to_source” еще присутствовал, но затем, похоже, был удален за ненадобностью. Стоит догадываться, что убрали не зря.

http://eli.thegreenplace.net/2009/11/28/python-internals-working-with-python-asts/

import codegen
print codegen.to_source(node)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version