python的闭包

1 什么是闭包

闭包是一种设计模式,闭包使得程序员可以编码出更加简洁的代码。

2 闭包的结构

第一,必须包含一对嵌套函数,即外部函数和内部函数。

第二,内部函数必须引用外部函数的局部变量。

第三,外部函数必须返回内部函数,注意这里返回的是内部函数本身,而不是返回对内部函数的调用。

3 闭包的例子

关于正方形和立方体的函数,仅指数不同(分别为:2 和 3)

传统方式:

>>

def square(x):

    return x**2

def cube(x):
    return x**3

square(2)-->4

cube(2)-->8

闭包:

>>

def fpower(exp):

    def inner(x):

        return x**exp

    return inner

square = fpower(2)

cube = fpower(3)

square(2)-->4

cube(2)-->8









原文地址:https://www.cnblogs.com/hustdc/p/7128020.html