Форум сайта python.su
Добрый день.
Приходится использовать старенький Python 2.6.6
Привожу шаблон части моего скрипта (шаблон имеет такую же структуру, но не имеет смысла)
def _func(): '''Normal ....''' import contribs print 'top' def _func_sub_1(): '''Normal ...''' print 'Sub 1' def _func_sub_2(): '''Warning-1 ...''' a = 5 print 'Sub_2' _func_sub_1() _func_sub_2() contribs._func_import() _func() exit(0)
>>> _func.func_code.co_consts ('Normal ....', -1, None, 'top', <code object _func_sub_1 at 0x7f7dc83a9b70, file "./test.py", line 31>, <code object _func_sub_2 at 0x7f7dc83a9468, file "./test.py", line 34>) >>>_func.func_code.co_consts[4].co_consts ('Normal ...', 'Sub 1', None) >>>_func.func_code.co_consts[5].co_consts ('Warning-1 ...', 'Warning', 5, 'Sub_2', None)
Отредактировано Dezex (Авг. 16, 2017 16:34:32)
Офлайн
DezexНет, вам не нужно, внутренние функции - это сугубо инфраструктура объемлющей функции. Функция - “черный ящик”, вам как пользователю функции нужно знать только её интерфейс, никак не внутреннее устройство. Вы же ведь все равно не имеете возможности обратиться к вложенным функциям, вызвать их. Если нужно, то пишите класс, оформляйте все функции методами и получите АПИ класса.
Мне нужно получить информацию о вложенных функциях
Офлайн