Зваротныя функцыі ў Python
У Python ёсць магчымасць перадаваць функцыі у параметры іншых функцый. Пры гэтым функцыі перадаюцца як зменныя (без круглых дужак) і называюцца зваротнымі функцыямі. Такія зваротныя функцыі будуць выконвацца ў целе асноўнай функцыі.
Хай у нас ёсць функцыя test
,
якая параметрам прымае лік і
функцыю:
def test(num, func):
pass
Цяпер давайце створым функцыю func
,
якая будзе ўзводзіць лік у квадратную
ступень:
def func(num):
return num ** 2
Цяпер давайце вернемся да test
і ў
яе целе дапішам код, каб пераданая ў
параметр зваротная функцыя таксама параметрам
прымала лік. У выніку атрымаецца, што
вынікам test
будзе работа іншай
функцыі, лік для якой будзе брацца
з першага параметра test
:
def test(num, func):
print(func(num))
Далей выклікаем функцыю test
і
перадаем ёй першым параметрам 3
, а
другім - func
:
test(3, func) # выведзе 9
Якім будзе вынік выканання наступнага кода:
def get_Info(txt, func):
print(func(txt))
def func(name):
return 'user name is ' + name
get_Info('john', func)