您的位置:首页 > 编程语言 > Python开发

Python函数的内嵌,嵌套函数

2017-04-11 09:04 337 查看
Python,函数嵌套,到底是个什么东东?

很少有人用,但是,有时确实会用:

[python] view
plain copy

 





def multiplier(factor):  

    def multiplyByFactor(number):  

          return number*factor  

    return multiplyByFactor  

python程序,一个函数在另外一个函数的里面,外层的函数返回的是里层函数。也就是函数本身被返回了,返回的是函数(听起来和C语言的一些东东相似)。

注意,返回的函数还可以访问它的定义所在的作用域,也就是它带着它的环境信息奥。

看看下面的用法,就会有被水浇的感觉了:

[python] view
plain copy

 





>>>double = multiplier(2)  

>>>double(5)  

10  

  

>>>triple=multiplier(3)  

>>>triple(3)  

9  

  

>>>multiplier(5)(4)  

>>>20  

每次调用外层函数,它内部的函数都会被重新绑定,factor变量每次都有一个新的值。

以上内容摘抄自《python基础教程》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息