一、四种函数的类型
函数根据有没有参数,有没有返回值,可以相互组合,一共有4种
- 无参数,无返回值
- 无参数,有返回值
- 有参数,无返回值
- 有参数,有返回值
1.无参数,无返回值的函数——此类函数,不能接收参数
def imformation():
print("哈哈")
imformation()
2.无参数,有返回值的函数——此类函数,不能接收参数,但是可以返回某个数据
def get_num():
return 17
num = get_num()
print(num)
3.有参数,无返回值的函数——此类函数,能接收参数,但不可以返回数据
def num(a,b):
c = a+b
return a,b
num(1,2)
4.有参数,有返回值的函数——此类函数,不仅能接收参数,还可以返回某个函数
#计算1-num之间的和
def calculateNum(num):
result = 0
i = 1
while i<=num:
result = result + i
i+=1
return result
result = calculateNum(100)
print('1~100的累积和为:%d'%result)
二、匿名函数
python 使用 lambda 来创建匿名函数。
lambda只是一个表达式,函数体比def简单很多。
lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
def func(x,y):
return x*y
print func(2,3)
与上面函数等价的匿名函数如下:
func=lambda x,y:x*y #一行搞定
print func(2,3)
注:输出的值都是6。
三、递归函数
在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。
def fact(n):
if n==1:
return 1
return n * fact(n-1)