python 裝飾器的用法

2022-08-31 14:15:19 字數 1219 閱讀 2038

為什麼要使用裝飾器?

在不改變原函式功能的情況,為了新增新的功能 我們可以在函式執行前後給函式新增新的功能

1

defouter(func):2#

fun()等於原f1函式

3def

inner():

4print('

ccccc')

5 r=func()

6print('

dddd')

7returnr8

return

inner

9@outer10#

@outer代表執行了2個步驟:1.將f1作為引數執行outer函式,2.新函式f1=inner()

11def

f1():

12print('

很複雜'

)13 r=f1()

14print

(r)15

#輸出:ccccc

16#

很複雜17

#  

dddd

18#  

none

兩個裝飾器的作用

def

outer_1(func):

def inner(*args,**kwargs):

print('

aaaa')

r=func(*args,**kwargs)

print('

bbbb')

return

r

return

inner

defouter(func):

def inner(*args,**kwargs):

print('

ccccc')

r=func(*args,**kwargs)

print('

dddd')

return

r

return

inner

@outer_1

@outer

deff1(a1,a2):

print('

很複雜'

)

return a1+a2

r=f1(2,4)

print

(r)#

輸出:aaaa

ccccc

很複雜dddd

bbbb

6

python 裝飾器的用法

先從乙個小例子開始,然後逐步引出裝飾器的作用。def name name james print my name is format name name 輸出結果為 my name is james.如果此時想在列印 my name is.之前加上打招呼的語句,且不能修改name 函式,就可以使用裝...

python函式裝飾器的用法

一 什麼是裝飾器 用來給其他固定函式增加其他功能的一種函式。裝飾器的實現是函式裡面巢狀函式,讓其他函式在不需要做任何 改動的前提下增加額外功能。裝飾器需要傳遞乙個函式,返回值也是乙個函式物件 二 裝飾器的應用舉例 1.需求 使用者登陸驗證的裝飾器,如果使用者登陸成功,則執行被裝飾的函式,如果登陸失敗...

python函式裝飾器 的用法

是python中的乙個語法糖,decorator表示宣告乙個函式裝飾器,這條宣告語句中,decorator通過 被宣告為了函式裝飾器,其作用是對緊接著定義的函式進行進一步的裝飾,並返回與被裝飾函式同名的函式。decorator用法規則 1 裝飾器函式decorator需要先定義 2 當要裝飾乙個函式...