Как передать функцию как параметр в Python?

Аватар пользователя Марфа Никитина
Марфа Никитина
11 декабря 2022

Поскольку функция в Python является объектом, ее можно передавать в другую функцию в качестве аргумента. При этом функция в аргументе указывается без круглых скобок, то есть передается только ссылка на функцию.

def calculate(a, b, operation):
    result = operation(a, b)
    return result

def sum(a, b):
    return a + b

def multiply(a, b)
    return a * b

calculate(2, 3, sum) # 5
calculate(3, 4, multiply) # 12

Функции, которые могут принимать другие функции в качестве аргументов, также называются функциями высшего порядка. Яркий пример функции высшего порядка - функция map(), которая принимает аргументом функцию и итерируемую последовательность, и применяет функцию-параметр к каждому элементу последовательности.

3 0
Познакомьтесь с основами Python бесплатно