函数的扩展,高阶函数。函数名其实也是一个变量。能够在函数中的通过函数名进行调用,所以函数就能够进行调用。这样就可以实现在一个函数中,调用其他函数的作用,也就是高阶函数:
# 高阶函数
def f(n):
return n*n
def foo(a, b, func):
return func(a)+func(b)
print(foo(1, 2, f))
这种调用方式,使得函数能够用起来更加的方便。
函数的递归:递归函数,递归的调用一个函数,是一个循环的方式。但是总的来说这个是十分慢的,大致来说是它的复杂度是十分大的。但是也是一个十分重要的函数应用方式,也不是十分麻烦,现在给出十分出名的菲波那切数列作为参考:
# 0 1 1 2 3 5 8 13 21 34 55。。。。。。
def fibo(n):
if n == 1:
return 0
elif n == 2:
return 1
return fibo(n-1)+fibo(n-2)
print(fibo(10))
在python中是内置了很多的函数的,这里由于太多的了。我参考了些大佬的博客,看了一篇很好的。、
转自:http://www.cnblogs.com/sesshoumaru/p/6140987.html#p1
有几个比较重要的:
map:使用指定方法去作用传入的每个可迭代对象的元素,生成新的可迭代对象
>>> a = map(ord,'abcd') >>> a <map object at 0x03994E50> >>> list(a) [97, 98, 99, 100]
>>> a = list(range(1,10)) #定义序列
>>> a
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> def if_odd(x): #定义奇数判断函数
return x%2==1
>>> list(filter(if_odd,a)) #筛选序列中的奇数
[1, 3, 5, 7, 9]
