Python-da iç-içe funksiýalar
Kody gysgaldylmak üçin, çagyrylan wagty funksiýalary biri-biriniň içine goýup bolýar.
Bizde san kwadrat we kub göterilýän we iki sanyň jemlanyşyny hasaplaýan funksiýalar bar bolsun:
def square(num):
return num ** 2
def cube(num):
return num ** 3
def add(num1, num2):
return num1 + num2
San kwadratynyň we kubunyň jemini almak üçin,
biz olary add funksiýasynyň çagyrylan
wagtynda onuň parametrine goýup bileris:
res = add(square(2), cube(4))
print(res) # 68 çykarar
Şeýle hem, bir funksiýanyň içinde beýleki
funksiýalary çagyryp bolýar. Öňki mysaly
gaýtadan ýazalyň we funksiýalary add
funksiýasynyň içinde çaýyralyň:
def add(num1, num2):
return square(num1) + cube(num2)
res = add(2, 4)
print(res) # 68 çykarar
Sany kwadrat götermek we sanyň kubyny almak üçin funksiýa düzüň. Olary ulanmak bilen, sanyň kwadratynyň kubyny ekrana çykarmak üçin funksiýa düzüň.
Üýtgeýjiniň tipini barlap, eger üýtgeýji setir bolsa, ony baş harp bilen çykarmaly funksiýa düzüň. Şeýle hem, ulanyjy ady boýunça salamlaýan funksiýa düzüň. Birinji funksiýany ikinjiniň içine şeýle goýuň, ady hemişe baş harp bilen çykarylsyn.