Что такое __code__ объект?

Senior
135 просмотров
AFK Offer AI

__code__ — code object функции, содержит скомпилированный bytecode. func.__code__.co_code — raw bytecode. co_consts — кортеж констант. co_varnames — локальные переменные. co_argcount — количество аргументов. co_filename — файл. co_firstlineno — первая строка. co_stacksize — размер стека. co_flags — флаги (CO_GENERATOR, CO_COROUTINE). Можно заменить: func.__code__ = other_func.__code__ — хак, но работает. code.replace() — создание нового code object с изменёнными атрибутами. Используется в: профайлерах, дебаггерах, code coverage, monkey patching.

Следующий вопрос

Что такое structlog?