Учебники

Jython — Функции

Сложная логика программирования разбита на один или несколько независимых и повторно используемых блоков операторов, называемых функциями. Стандартная библиотека Python содержит большое количество встроенных функций. Можно также определить их собственную функцию, используя ключевое слово def . Пользовательское имя функции сопровождается блоком операторов, который формирует ее тело, которое заканчивается оператором return.

После определения его можно вызывать из любой среды любое количество раз. Давайте рассмотрим следующий код, чтобы прояснить ситуацию.

#definition of function
defSayHello():
   "optional documentation string"
   print "Hello World"
   return

#calling the function
SayHello()

Функция может быть разработана для получения одного или нескольких параметров / аргументов из вызывающей среды. При вызове такой параметризованной функции необходимо предоставить одинаковое количество параметров с аналогичными типами данных, используемыми в определении функции, в противном случае интерпретатор Jython генерирует исключение TypeError .

пример

Live Demo

#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)

Выход будет следующим:

area = 200
Traceback (most recent call last):
   File "area.py", line 11, in <module>
   area(length)
TypeError: area() takes exactly 2 arguments (1 given)

После выполнения определенных в нем шагов вызываемая функция возвращается в вызывающую среду. Он может возвращать данные, если перед определением ключевого слова в определении функции указано выражение.

Live Demo

#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

Следующий вывод получается, если приведенный выше скрипт выполняется из приглашения Jython.