python 利器 装饰器

在之前有过闭包的概念后。那么横空出世的装饰器,让闭包更加的升华了。 古人云,利器啊!

其实闭包的概念,不止是在python 语言中独有的,像我们大名鼎鼎的java语言中也有,但是相对

我们超简洁,python语言来说,哈哈!闭包运用的更加灵活。对了,听说,

那go语言对闭包比Pythonj继承的更好。废话不多说!  上我们装饰器!

那么有人问了, 为啥要装饰器了。我说装饰器是为了在不改变代码的情况下,添加新的功能。

你肯定觉得,我去,你说的是个啥意思! 那么我们上代码, 演示你给看看!

项目的基础平台:

# 小区门禁系统   拍照---->判断
"""
    拍照
        内部车:直接抬杆
        外部车:抬杆 计时
    拍照:
        内部车:直接抬杆
        外部车:结束及时,计算时间,计算费用
"""
def f1():
    print("拍照,闪光灯")

def f2():
    print("抬杠,落")

def f3():
    print("语音输出!")

# 领导说了,要增加验证功能!

! 那么现在领导说要增加验证功能?那么你该怎么写,

难道你这样写

def f1():
    chenck("__验证通过1!__")
    print("拍照,闪光灯!")

def f2():
    check("__验证通过2__")
    print("落, 起")

def f3():
    check("__验证通过3__")
    print("落, 起")

# 然后第二天老板找你以后, 说你走吧 哈哈 ! 

老板辞退人了以后找了一个好一点程序员

这家伙聪明啦!这样来写!

def w1(func):
    def check_login():
        print("--------------验证---------------")
        print("--------------验证---------------")
        print("--------------验证---------------")
        return func()
    return check_login

@w1 # f1 = w1(f1)
def f1():
    print("拍照,闪光灯")

 @w1
 def f2():
     print("抬杆、落杆")
 @w1
 def f3():
     print("语音输出")

# 然后老板会心的笑啦,小伙子不错吗!可以可以 

然后这个小伙子成功加薪!  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值