Форум сайта python.su
хех… зато я понял что ты имеел ввиду когда спрашивал. =)
просто я думал что надо вызвать функцию из скрипта не импортируя скрипт, зная только имя функции,а не вызвать функцию которую передали (в примере передали именно функцию, а не ее имя)
собственно это то что и говорил j2a =)
Отредактировано (Фев. 6, 2008 16:51:53)
Офлайн
В таком языке программирования как питон (динамическая типизация) почти что всё-равно, есть ли у вас имя функции или сама импортированная функция, или там этой фукции вобще нету и небыло:) Вот это из разряда хаков (monkey patching), о которых возможно (я надеюсь) будет доклад на эксцепшине >>> http://www.python.com.ua/forum/viewtopic.php?id=1707
Я за проведение съёмки докладов, а то приехать скорее всего не получится:(
Офлайн
ну.. для манки-патчинга полюбому надо проимпортировать модуль… в принципе, как я понимаю, что происходит при импорте - код функции загружается в память, потом если надо, передается ссылка на его адрес в памяти. конечно есть и не только такие способы заполучения кода в память - довольно ничего привел tabajara =) хотелось бы побольше узнать про процесс компилирования кода, и манки-патчинг на этом этапе, изменение исходников на этапе до компилирования, читал про _ast, но есть одно но, дерево нельзя изменять (пока). вобщем интересно как работает compile()
=)
Офлайн
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/286195
Изменение скомпилированного байт-кода.
Процесс, прямо скажу, непростой.
Офлайн
а декомпилить этот код можно на лету?
и еще вопрос, можно ли компилить строки? если я например считал файл в буффер, и хочу его скомпилить - смогу ли я это сделать?
Офлайн