闭包

本文深入探讨了闭包的概念,解释了它如何通过在函数内部定义另一个函数并利用外部函数的变量来增强代码的可移植性和灵活性。通过具体实例展示了闭包在构造直线方程中的应用,以及它如何简化参数传递,提高代码效率。
# 什么是闭包呢?在函数内部再定义一个函数,并且这个函数用到了外边函数的变量,那么将这个函数以及用到的一些变量称之为闭包
# 理解闭包是理解装饰器的前提
# 我们直接看闭包的应用吧
# 假设呢我们的直线的a、b是不确定的,x也是不确定的,每当我们要构造一条直线确定y值时,我们需要传递三个参数a、b、x,这极大地减少了代码的可移植性
# 通过使用闭包呢?可以先构造出这条直线,然后再传入x(想传什么传什么,还不用构造直线了),计算y值


def test01(a, b):
    def test02(x):
        return a * x + b

    return test02


test1 = test01(1, 1)
test2 = test01(4, 5)
print(test1(5))
print(test2(5))

 

转载于:https://www.cnblogs.com/tangxlblog/p/9948185.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值