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:

pythondef 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:

pythonres = 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:

pythondef add(num1, num2):
  return square(num1) + cube(num2)
  
res = add(2, 4)
print(res) # väljastab 68
Задание 1

Koostage funktsioon, mis tõstab arvu ruutu ja funktsioon arvu kuubi saamiseks. Kasutades neid, looge funktsioon, mis väljastab ekraanile arvu ruudu kuubi.

Задание 2

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.