Jython – 函数
一个复杂的编程逻辑被分解成一个或多个独立的、可重复使用的语句块,称为函数。Python的标准库包含大量的内置函数。人们也可以使用 def 关键字来定义自己的函数。用户定义的函数名称后面是构成其主体的语句块,以返回语句结束。
一旦定义,它可以从任何环境中被调用任意次数。让我们考虑一下下面的代码,以明确这一点。
#definition of function
defSayHello():
"optional documentation string"
print "Hello World"
return
#calling the function
SayHello()
一个函数可以被设计为从调用环境中接收一个或多个参数/参数。在调用这样一个参数化的函数时,你需要提供与函数定义中使用的数据类型相同的参数数量,否则Jython解释器会抛出一个 TypeError 异常。
例子
#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)
在执行了其中定义的步骤后,被调用的函数返回到调用环境。如果在函数定义中的return关键字前面提到一个表达式,它可以返回数据。
#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提示符下执行上述脚本,将得到以下输出。
area = 200
value returned by function : 200