zoukankan      html  css  js  c++  java
  • Python_装饰器函数

    装饰器的本质:

      一个闭包函数

    装饰器的功能:在不修改原函数及其调用方式的情况下对原函数功能进行扩展

    装饰器原理:

    def func():
        print('xxx')
    
    def outer(f):           # outer(f) = outer(func)
        def inner():
            set = f()       # set = func()
            return set
        return inner        # func() = inner()
    
    func = outer(func)
    func()
    
    xxx

    装饰器完整形态:

    def outer(flge):
        def inner(*args, **kwargs):
            set = inner(*args, **kwargs)
            return set
        return inner
    
    @outer
    def func():
        pass
    
    print(func())

    开放封闭原则

    1、对扩展是开放的

      为什么要对扩展开放呢?

      我们说,任何一个程序,不可能在设计之初就已经想好了所有的功能并且未来不做任何更新和修改。所以我们必须允许代码扩展、添加新功能。

    2、对修改是封闭的

      为什么要对修改封闭呢?

      就像我们刚刚提到的,因为我们写的一个函数,很有可能已经交付给其他人使用了,如果这个时候我们对其进行修改,很有可能影响其他已经在使用该函数的用户。

      装饰器完美的遵循这个开放封闭原则。

  • 相关阅读:
    LG P2473 [SCOI2008]奖励关
    三分法
    P2521 [HAOI2011]防线修建
    金融分析-ipython
    vue --webpack的使用
    Vue-npm命令解析
    Vue-router VUE路由系统
    爬虫--总目录
    爬虫-scrapy框架
    爬虫-性能相关- twisted-tornado
  • 原文地址:https://www.cnblogs.com/Chong-Yang/p/8136652.html
Copyright © 2011-2022 走看看