html5营销网站建设,东莞住房和城乡建设局网站,平台推广营销方案,内推网这篇文章主要介绍了python支持返回函数的实例解析,小编觉得挺不错的#xff0c;现在分享给大家#xff0c;也给大家做个参考。一起跟随小编过来看看吧最近接触python,看到了python中返回函数的概念#xff0c;以前只接触过函数返回值#xff0c;比如python就可以返回int,st…这篇文章主要介绍了python支持返回函数的实例解析,小编觉得挺不错的现在分享给大家也给大家做个参考。一起跟随小编过来看看吧最近接触python,看到了python中返回函数的概念以前只接触过函数返回值比如python就可以返回int,str,list,dict等等类型数据这里要说的是python还支持返回函数。首先看看python支持返回函数的基本语法def f():print call f()...# 定义函数g:def g():print call g()...# 返回函数g:return g这里最外层的函数f会返回一个函数g也就是函数g本身下面看看函数调用的过程;(接上面) x f() # 调用f()call f()... x # 变量x就是上面一个最外层函数返回的函数(不是函数值) x() # x指向函数因此可以调用这里就是调用内层函数x()的过程call g()... # 调用x()就是执行g()函数定义的代码只返回函数的作用返回函数可以把一些计算延迟执行。例如如果定义一个普通的求和函数def calc_sum(lst):return sum(lst)calc_sum([1,2,3,4])结果直接是10但是可以通过返回函数思想写代码就可以“延时计算”def calc_sum(lst):def lazy_sum():return sum(lst) return lazy_sum下面是调用注意下面代码并没有对函数进行执行计算出结果而是返回函数。 f calc_sum([1, 2, 3, 4]) f对返回的函数进行调用时才计算出结果f()10下面是一个例子请编写一个函数calc_prod(lst)它接收一个list返回一个函数返回函数可以计算参数的乘积。思想:先定义能计算乘积的函数再将此函数返回。def calc_prod(lst):def lazy_prod():def f(x,y):return x*yreturn reduce(f,lst,1)return lazy_prodf calc_prod([1, 2, 3, 4])print f()相关推荐