一般来说python之中的函数return关键字返回的内容都是表示是或者对象以及具体的某个值,而最近有小伙伴问小编该怎么在函数内返回函数。所以这篇文章将会来给大家详细讲解一下,python函数将另外一个函数作为返回值是怎么实现的,感兴趣的话就往下看看吧。
(1)python之中定义好了一个函数之后,如果有return关键字可以返回任意内容出去,但是不能够返回函数自身。这是因为违反了函数自调用递归规则,可以在函数内部调用这个函数就被称之为递归。
(2)那么函数内想要将另外一个函数作为返回值的话也不是没有方法,第一个方法就是在函数定义时设置一个参数,然后在函数内部将这个参数给返回出去。而调用函数时传递另外一个函数对象作为参数来使用它,这样就可以去实现函数返回另外一个函数。
但是这种形式没有办法去控制传进来参数类型,也就是无法保证传递进来的值一定是函数对象。
(3)所以正确的解决方法应该是在函数内部又去定义另外一个函数,那么这个函数会被视为局部函数,根据上层结构可以引用自己下一层对象的特定。将局部函数作为返回值即可,详细代码示例如下所示:
def get_math_func(type) : def square(n) : return n * n def cube(n) : return n * n * n if type == "square" : return square if type == "cube" : return cube
以上就是关于“Python函数如何返回函数?Python函数返回另一个函数作为值”的全部内容了,希望对你有所帮助。