python练习之高级特性(闭包)

1.概念

闭包就是指有权访问另一个函数作用域中的变量的函数。

2.如何实现闭包

创建闭包最常见方式,就是在一个函数内部创建另一个函数。
常见形式: 内部函数使用了外部函数的临时变量,且外部函数的返回值是内部函数的引用。 闭包的一个常用场景就是装饰器。

3.闭包要满足的三个条件

1.函数里面嵌套函数
2.内部函数使用外部函数的变量
3.外部函数的返回值被内部函数引用(函数名)

def timeit(name):
    def wrapper():         #定义函数不执行里面的代码,调用函数时才执行里面的代码
        print(name)
        return 'ok'
    return wrapper


result = timeit("westos")
print(result)

在这里插入图片描述

在这里插入图片描述

def timeit(name):
    def wrapper():
        print(name)
        return 'ok'
    return wrapper


result = timeit("westos")      #调用timeit函数,函数的返回值是wrapper函数引用
result1 = result()     调用
print(result1)

在这里插入图片描述

在这里插入图片描述

4.优点

闭包也具有提高代码可复用性的作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值