Функция высшего порядкаФу́нкция вы́сшего поря́дка — в программировании функция, принимающая в качестве аргументов другие функции или возвращающая другую функцию в качестве результата. Основная идея состоит в том, что функции имеют тот же статус, что и другие объекты данных. Использование функций высшего порядка приводит к абстрактным и компактным программам, принимая во внимание сложность производимых ими вычислений.[1] ПримерСледующий исходный код, написанный на Python, содержит функцию высшего порядка g(), которая в качестве первого аргумента принимает функцию. В результате на экран будет выведено «100» (результат вычисления (7+3)×(7+3)). def f(x):
return x + 3
def g(function, x):
return function(x) * function(x)
print(g(f, 7))
ДекораторыВ синтаксисе Python существует способ сокращения вызовов функций высшего порядка, называемый декоратором.[2] Примечания
|