Pesastatud funktsioonid Pythonis
Koodi lühendamiseks saab funktsioone üksteise sisse pesastada nende väljakutsumisel.
Oletame, et meil on funktsioonid arvu ruutu tõstmiseks, kuupi tõstmiseks ja kahe arvu liitmiseks:
def square(num):
return num ** 2
def cube(num):
return num ** 3
def add(num1, num2):
return num1 + num2
Arvu ruudu ja kuubi summa saamiseks
saame need add funktsiooni parameetritesse
pesastada selle väljakutsumisel:
res = add(square(2), cube(4))
print(res) # väljastab 68
Lisaks saab funktsioone välja kutsuda ka
teise funktsiooni kehas. Kirjutame ümber
eelmise näite ja kutsume funktsioonid välja
add funktsiooni sees:
def add(num1, num2):
return square(num1) + cube(num2)
res = add(2, 4)
print(res) # väljastab 68
Koostage funktsioon, mis tõstab arvu ruutu ja funktsioon arvu kuubi saamiseks. Kasutades neid, looge funktsioon, mis väljastab ekraanile arvu ruudu kuubi.
Koostage funktsioon, mis kontrollib muutuja tüüpi ja kui muutuja on string, siis väljastab selle suure algustähega. Samuti looge funktsioon, mis tervitab kasutajat nime järgi. Pesastage sellesse esimene funktsioon nii, et nimi oleks alati väljastatud suure algustähega.