Funkcijas-kolbeki Python
Python ir iespēja nodot funkcijas citu funkciju parametros. Šajā gadījumā funkcijas tiek nodotas kā mainīgie (bez apaļajām iekavām) un tiek sauktas par kolbekiem. Šādas funkcijas-kolbeki tiks izpildītas pamatfunkcijas pamattekstā.
Pieņemsim, ka mums ir funkcija test,
kas parametru pieņem skaitli un
funkciju:
def test(num, func):
pass
Tagad izveidosim funkciju func,
kas kāpinās skaitli kvadrātā:
def func(num):
return num ** 2
Tagad atgriezīsimies pie test un
tās pamattekstā papildināsim kodu, lai nodotā
parametrā funkcija-kolbeks arī parametru
pieņemtu skaitli. Rezultātā izrādīsies, ka
test rezultāts būs citas
funkcijas darbs, kurai skaitlis tiks ņemts
no pirmā parametra test:
def test(num, func):
print(func(num))
Tālāk izsaucam funkciju test un
nododam tai pirmo parametru 3, bet
otro - func:
test(3, func) # izvadīs 9
Kāds būs šāda koda izpildes rezultāts:
def get_Info(txt, func):
print(func(txt))
def func(name):
return 'lietotāja vārds ir ' + name
get_Info('john', func)