functools 補充函數
1 wrapscode
在編寫裝飾器時,在實現前加入 @functools.wraps(func) 能夠保證裝飾器不會對被裝飾函數形成影響。wraps 保存被裝飾函數的原信息it
def decorator(f) wraps(f) def inner(*args,**kwargs):
2 partial 函數import
其實就是函數調用的時候,有多個參數 參數,可是其中的一個參數已經知道了,咱們能夠經過這個參數從新綁定一個新的函數,而後去調用這個新函數。im
from functools import partial def f(a,b): return a + b f1 = partial(f,10) print(f1(5)) -->> 15
itertools 補充裝飾器
1 chaintools
from itertools import chain li = [1,2,3] li2 = [3,4,5] li3 = chain(li,li2) print(li3,list(li3))