1. 程式人生 > 資訊 >中汽協:我國 5 月份新能源汽車銷量同比增長 159.7%

中汽協:我國 5 月份新能源汽車銷量同比增長 159.7%

#函式裝飾器  並且實現函式過載
#裝飾器實現效果:可以在不改變原函式內部程式碼和呼叫方式的前提下,實現在函式執行和執行擴充套件功能。
#適用場景:多個函式系統統一在執行前後自定義一些功能。
def outer(fun):  #fun=func1
    def inner(*args, **kwargs):  #裝飾器裡面有個新函式用來“裝飾”
        if len(args) == 1:
              print('before-1')
              res = fun(*args, **kwargs)
              print('after-1')
              return res
        else:
              print('before-2')
              res=fun(*args, **kwargs)
              print('after-2')
              return res
    return inner  #把裝飾好的東西返回

@outer      #把下面的func1 當作引數傳到outer函式裡面
def func1(*args):

    value=(11, 22, 33)
    print('func1函式',value)


func1()
#func1(5)
#func1(5,6)

 建議背會的裝飾模板

def outer(fun):
    def inner(*args, **kwargs):
        # 執行前
        res = fun(*args, **kwargs)
        #執行後
        return res
    return inner

@outer
def func(*args):
    pass

func()