Python :динамически создавать функцию во время выполнения

Как динамически создать функцию в Python?

Я видел здесь несколько ответов, но не смог найти ни одного, который описывал бы самый общий случай.

Рассмотрим:

def a(x):
    return x + 1

Как создать такую ​​функцию на мухе --? Должен ли я compile('...', 'name', 'exec')это сделать? Но что тогда? Создание фиктивной функции и замена ее объекта кода на один из этапов компиляции?

Или я должен использовать types.FunctionType? Как?

Я хотел бы настроить все :количество аргументов, их содержание, код в теле функции, результат,...

37
задан Ecir Hana 2 July 2012 в 09:47
поделиться