Jython - Funções

Uma lógica de programação complexa é dividida em um ou mais blocos de instruções independentes e reutilizáveis ​​chamados de funções. A biblioteca padrão do Python contém um grande número de funções integradas. Também se pode definir sua própria função usando odefpalavra-chave. O nome da função definido pelo usuário é seguido por um bloco de instruções que forma seu corpo, que termina com a instrução return.

Uma vez definido, ele pode ser chamado de qualquer ambiente qualquer número de vezes. Vamos considerar o código a seguir para deixar o ponto claro.

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

#calling the function
SayHello()

Uma função pode ser projetada para receber um ou mais parâmetros / argumentos do ambiente de chamada. Ao chamar essa função parametrizada, você precisa fornecer o mesmo número de parâmetros com tipos de dados semelhantes usados ​​na definição da função, caso contrário, o interpretador Jython emitirá umTypeError exceção.

Exemplo

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

o output será o seguinte -

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

Após realizar as etapas nele definidas, a função chamada retorna ao ambiente de chamada. Ele pode retornar os dados, se uma expressão for mencionada na frente da palavra-chave return dentro da definição da função.

#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

A saída a seguir é obtida se o script acima for executado no prompt Jython.

area = 200
value returned by function : 200