def anafonksiyon(işlem_adı):
def toplama(*args):
toplam = 0
for i in args:
toplam += i
return toplam
def çarpım(*args):
çarpım = 1
for i in args:
çarpım *= i
return çarpım
if işlem_adı == "toplama":
return toplama
else:
return çarpım
fonk = anafonksiyon("toplama")
fonk
<function __main__.anafonksiyon.<locals>.toplama>
fonk(1,2,3,4,5,6,7)
28
fonk2 = anafonksiyon("çarpma")
fonk2
<function __main__.anafonksiyon.<locals>.çarpım>
fonk2(1,2,3,4,5)
120
def toplama(a,b):
return a + b
def çıkarma(a,b):
return a-b
def çarpma(a,b):
return a*b
def bölme(a,b):
return a/ b
def anafonksiyon(func1,func2,func3,func4,işlem_adı):
if işlem_adı == "toplama":
print(func1(3,4))
elif işlem_adı == "çıkarma":
print(func2(10,3))
elif işlem_adı == "çarpma":
print(func3(3,5))
elif işlem_adı == "bölme":
print(func4(10,4))
else:
print("Geçersiz İşlem....")
anafonksiyon(toplama,çıkarma,çarpma,bölme,"toplama")
7
anafonksiyon(toplama,çıkarma,çarpma,bölme,"çarpma")
15