使用函数的目的
※ 降低编程的难度
※ 代码重用
函数的定义:使用def语句
def
※ 函数名:
※ 参数列表
※ 参数个数大于等于零
※ 多个参数由逗号分隔
※ 形式参数:定义函数时,函数名后面圆括号中的变量,简称“形参”。形参只在函数内部有效。
※ 实际参数:调用函数时,函数名后面圆括号中的变量,简称“实参”。
※ return语句:结束函数调用,并将结果返回给调用者。
※ reture语句是可选的,可出现在函数体的任意位置
※ 没有return语句,函数在函数体结束位置将控制权返回给调用者。
※ 函数接口:返回值和参数
※ 函数传递信息的主要途径
※ 通过函数返回值的方式传递信息
※ 通过参数传递信息
函数的返回值:
※ return语句:程序退出该函数,并返回到函数被调用到的地方。
※ return语句返回的值传递给调用程序。
※ 返回值有两种形式:返回一个值、返回多个值
※ 无返回值的return语句等价于 return None,None是表示没有任何东西的特殊类型
※ 返回值可以是一个变量,也可以是一个表达式
改变参数值的函数
※ 函数的形参只接收了实参的值,给形参赋值并不影响实参
※ python可以通过值来传递参数
递归的定义
※ 递归:函数定义中使用函数自身的方法
※ 经典例子:阶乘
n! = (n-1)(n-2)....(1)
※ 举例:5! = 5(4)(3)(2) = 5 * 4
※ 推广:n! = n(n-1)!
※ 阶乘的递归定义: 1 n=0
n! =
n(n-1)!
※ 0的阶乘:定义为1
※ 以上被称作递归的基例。
# 阶乘的递归定义函数
def fact(n):
if n == 0:
return 1
else:
return n * fact(n-1) #在fact函数内部,调用自己