Jython - funkcje
Złożona logika programowania jest podzielona na jeden lub więcej niezależnych bloków instrukcji wielokrotnego użytku nazywanych funkcjami. Biblioteka standardowa Pythona zawiera dużą liczbę wbudowanych funkcji. Można również zdefiniować własną funkcję za pomocądefsłowo kluczowe. Po nazwie funkcji zdefiniowanej przez użytkownika następuje blok instrukcji, który tworzy jej treść i kończy się instrukcją return.
Po zdefiniowaniu można go wywoływać z dowolnego środowiska dowolną liczbę razy. Rozważmy następujący kod, aby wyjaśnić sprawę.
#definition of function
defSayHello():
"optional documentation string"
print "Hello World"
return
#calling the function
SayHello()
Funkcja może być zaprojektowana tak, aby otrzymywać jeden lub więcej parametrów / argumentów ze środowiska wywołującego. Wywołując taką sparametryzowaną funkcję, należy podać taką samą liczbę parametrów z podobnymi typami danych użytymi w definicji funkcji, w przeciwnym razie interpreter Jythona wyrzucaTypeError wyjątek.
Przykład
#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)
Plik output będzie następująca -
area = 200
Traceback (most recent call last):
File "area.py", line 11, in <module>
area(length)
TypeError: area() takes exactly 2 arguments (1 given)
Po wykonaniu zdefiniowanych w nim kroków wywoływana funkcja powraca do środowiska wywołującego. Może zwrócić dane, jeśli przed słowem kluczowym return w definicji funkcji znajduje się wyrażenie.
#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
Poniższe dane wyjściowe są uzyskiwane, jeśli powyższy skrypt jest wykonywany z zachęty Jythona.
area = 200
value returned by function : 200