Я пытался динамически создавать и изменять функцию в Python. Я исследовал Интернет и Stack Overflow, но большинство решений, которые я вижу, используют одно из следующих решений, которые мне не нужны:
- и/или компиляция()
- s
- замыкания и вложенные функции
Например, у меня есть следующий код:s
[*]замыкания и вложенные функции
Например, у меня есть следующий код:
и я хочу изменить его на:
Однако по некоторым причинам мне не разрешено изменять код функции напрямую. Я ищу способ каким-то образом изменить байт-коды атрибута функции __code__ или динамически создать новый объект функции с помощью какого-либо создателя функций. Есть ли способ сделать это? Я ищу что-то вроде чередования байтов кода или решение, связанное с AST. Есть идеи?
Подробнее здесь:
https://stackoverflow.com/questions/787 ... -compile-e