Найти - Пользователи
Полная версия: Можно ли вызвать из скрипта функцию не импортируя его?
Начало » Python для экспертов » Можно ли вызвать из скрипта функцию не импортируя его?
1 2
cybergrind
хех… зато я понял что ты имеел ввиду когда спрашивал. =)
просто я думал что надо вызвать функцию из скрипта не импортируя скрипт, зная только имя функции,а не вызвать функцию которую передали (в примере передали именно функцию, а не ее имя)

собственно это то что и говорил j2a =)
poltergeist
В таком языке программирования как питон (динамическая типизация) почти что всё-равно, есть ли у вас имя функции или сама импортированная функция, или там этой фукции вобще нету и небыло:) Вот это из разряда хаков (monkey patching), о которых возможно (я надеюсь) будет доклад на эксцепшине >>> http://www.python.com.ua/forum/viewtopic.php?id=1707

Я за проведение съёмки докладов, а то приехать скорее всего не получится:(
cybergrind
ну.. для манки-патчинга полюбому надо проимпортировать модуль… в принципе, как я понимаю, что происходит при импорте - код функции загружается в память, потом если надо, передается ссылка на его адрес в памяти. конечно есть и не только такие способы заполучения кода в память - довольно ничего привел tabajara =) хотелось бы побольше узнать про процесс компилирования кода, и манки-патчинг на этом этапе, изменение исходников на этапе до компилирования, читал про _ast, но есть одно но, дерево нельзя изменять (пока). вобщем интересно как работает compile()
=)
Андрей Светлов
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/286195
Изменение скомпилированного байт-кода.
Процесс, прямо скажу, непростой.
cybergrind
а декомпилить этот код можно на лету?
и еще вопрос, можно ли компилить строки? если я например считал файл в буффер, и хочу его скомпилить - смогу ли я это сделать?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB