51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Python的闭包

闭包是Python和JavaScript等语言的独占语法,有配置设置和简化输入等应用场景。

闭包的制作和使用

制作一个闭包

闭包是这样制作的:

def config(a):  #定义外部函数
    def add(b):  #定义内部函数
        return a + b  #返回两个参数的和
    return add  #返回add()的引用(类似于指针),会带着参数跳转到此函数

使用闭包

config1 = config(2)  #将外部函数(包括外部函数参数a)赋值给一个变量,这就是内部函数的"配置文件"
print('2 + 3 == ' + str(config1(3)))  #然后变量成功变身,可以当函数使用了,其参数就是内部函数参数b
print('2 + 4 == ' + str(config1(4)))  #你可以改变参数的值
config2 = config(1)  #如果想要改变"配置文件"的参数也可以,不同"配置文件"互不打扰
print('1 + 3 == ' + str(config2(3)))

输出如下:

2 + 3 == 5
2 + 4 == 6
1 + 3 == 4
赞(2)
未经允许不得转载:工具盒子 » Python的闭包