Jython - Fonksiyonlar
Karmaşık bir programlama mantığı, işlevler olarak adlandırılan bir veya daha fazla bağımsız ve yeniden kullanılabilir ifade bloğuna bölünmüştür. Python'un standart kitaplığı çok sayıda yerleşik işlev içerir. Biri kendi işlevini kullanarak da tanımlayabilirdefanahtar kelime. İşlevin kullanıcı tanımlı adını, gövdesini oluşturan ve return ifadesiyle biten bir ifade bloğu izler.
Bir kez tanımlandıktan sonra herhangi bir ortamdan istenilen sayıda çağrılabilir. Konuyu netleştirmek için aşağıdaki kodu ele alalım.
#definition of function
defSayHello():
"optional documentation string"
print "Hello World"
return
#calling the function
SayHello()
Bir işlev, çağıran ortamdan bir veya daha fazla parametre / argüman alacak şekilde tasarlanabilir. Bu tür parametreleştirilmiş bir işlevi çağırırken, işlev tanımında kullanılan benzer veri türlerine sahip aynı sayıda parametre sağlamanız gerekir, aksi takdirde Jython yorumlayıcısı birTypeError istisna.
Misal
#defining function with two arguments
def area(l,b):
area = l*b
print "area = ",area
return
#calling function
length = 10
breadth = 20
#with two arguments. This is OK
area(length, breadth)
#only one argument provided. This will throw TypeError
area(length)
output aşağıdaki gibi olacak -
area = 200
Traceback (most recent call last):
File "area.py", line 11, in <module>
area(length)
TypeError: area() takes exactly 2 arguments (1 given)
İçinde tanımlanan adımları gerçekleştirdikten sonra, çağrılan işlev çağıran ortama geri döner. İşlevin tanımı içinde return anahtar sözcüğünün önünde bir ifadeden bahsedilmişse, verileri döndürebilir.
#defining function
def area(l,b):
area = l*b
print "area = ",area
return area
#calling function
length = 10
breadth = 20
#calling function and obtaining its reurned value
result = area(length, breadth)
print "value returned by function : ", result
Yukarıdaki komut dosyası Jython komut isteminden çalıştırılırsa aşağıdaki çıktı elde edilir.
area = 200
value returned by function : 200