Python hiç bilmiyorum ama chatgpt den biraz yardım aldım bişeyler öğrendim

)
Bu kod parçası, Python dilinde bir matematik işlevini oluşturmak için lambda ifadesinin nasıl kullanılacağını göstermektedir. İşte kodun adım adım açıklaması:
- math adında bir fonksiyon tanımlanıyor. Bu fonksiyon, bir argüman (a) alacak ve a üzerinde işlem yapacak olan bir lambda işlevini döndürecek.
- Lambda ifadesi, gelen a argümanını n parametresinin üzerine yükseltir (a^n). Ancak n değişkeni tanımlanmadığından, bu kod hata verecektir. n değişkeninin ne olduğunu belirtmek için, kodu düzenlememiz gerekecek.
- square adında bir değişken tanımlanıyor ve math(2) ifadesi kullanılarak oluşturulan lambda işlevini alıyor. Bu, 2. kuvvetini hesaplayacak bir işlevi square değişkenine atar.
- cube adında bir değişken tanımlanıyor ve math(3) ifadesi kullanılarak oluşturulan lambda işlevini alıyor. Bu, 3. kuvvetini hesaplayacak bir işlevi cube değişkenine atar.
- square(3) ifadesi, square değişkenine atanan lambda işlevini çalıştırır ve 3 sayısının karesini hesaplar. Sonuç olarak, 3^2 = 9 elde edilir ve bu değer print ifadesiyle ekrana yazdırılır.
- cube(3) ifadesi, cube değişkenine atanan lambda işlevini çalıştırır ve 3 sayısının küpünü hesaplar. Sonuç olarak, 3^3 = 27 elde edilir ve bu değer print ifadesiyle ekrana yazdırılır.
Sonuç olarak, kod 3 sayısının karesini ve küpünü hesaplar ve bu değerleri ekrana yazdırır. Ancak, n değişkeni tanımlanmadığı için hata verecektir. Kodu düzeltmek için math fonksiyonunun n parametresini alması ve lambda ifadesinin n üzerine yükseltme işlemini gerçekleştirmesi gerekmektedir. Örneğin:
Alıntı
def math ( n ) : return lambda a: a ** n square = math(2) cube = math(3) print(square(3)) # 9 print(cube(3)) # 27