python3 深入裝飾器

2021-10-17 04:38:47 字數 757 閱讀 4337

def outer(c):

def inner(uname):

print('我是',end='')

c(uname)

return inner

@outer

def fun_1(uname):

print(f'北京的-')

fun_1('mike')

def outer(c):

def inner(*args,**kwargs): #通用的形參的設定

print('我是',end='')

c(*args,**kwargs) #多個引數值

return inner

@outer

def fun_2(uname=):

print(f'天津的-')

#呼叫fun_2(['張三','王五','奧特曼'])

def outer(c):

def inner(*args,**kwargs): #通用的形參的設定

print('我是',end='')

return c(*args,**kwargs) #多個引數值

return inner #返回內部函式

@outer

def fun3(dict={}):

return (f'杭州的-')

#呼叫result=fun3()

print(result)

Python3 高階 裝飾器

1.裝飾器功能 在不修改原函式的情況下,增強函式功能 2.不帶引數的函式 不帶引數的裝飾器 1 foo 被裝飾的函式 2 show time 是裝飾器 coding utf 8 import time def show time func def inner start time time.time...

python3裝飾器 高階

作用 優化裝飾器 from functools import wraps 匯入wraps def wraps f wraps的語法糖 def inner args,kwargs ret f args,kwargs return ret return inner deff1 print hello,w...

Python3裝飾器解析

實現裝飾器知識儲備 1.函式即 變數 白話 函式實參 當作另乙個函式的形參 2.高階函式 a 把乙個函式名當作實參傳給另乙個函式 在不修改被裝飾函式源 的情況下為其新增功能 b 返回值中包涵函式名 說白了,此函式名是巢狀函式名 不修改函式的呼叫方式 3.巢狀函式 高階函式 巢狀函式 裝飾器 詳解im...