(1)2行中,def
是函数定义声明的关键字,exam是函数名,命名规范与变量一致,x是形参,可以看作是占位符,具体数值由调用它的语句给出。其中,冒号、小括号和缩进缺一不可。
(2)3-4行是exam函数的细节代码。4行是该函数的返回值,不需要向调用处返回值可不省略不写。
(3)6行y获取函数的返回值,在7行中展示。2是函数的实参,将值传到形参中,使得形参变量x的值为2进行计算,最后返回y。
结果为:
注:形参是函数声明时使用,仅起语义作用;实参是函数调用时使用,必须是具体的数值。
一次声明,永远可用。
函数的作用域
函数中声明的变量仅在该函数中可用,在改函数之外属于未定义变量。上述实例的变量y在函数exam中使用的时候为x*x的值,在后面外部环境中使用时指的是函数exam的返回值y的值。二者不相同。
注:在函数中定义的变量,函数调用时临时产生,调用结束时马上销毁。
函数的递归
即调用自身,但是必须是有限次数的递归,否则形成死循环会报错。