新聞中心
說(shuō)明

成都創(chuàng)新互聯(lián)公司基于成都重慶香港及美國(guó)等地區(qū)分布式IDC機(jī)房數(shù)據(jù)中心構(gòu)建的電信大帶寬,聯(lián)通大帶寬,移動(dòng)大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業(yè)服務(wù)器托管報(bào)價(jià),主機(jī)托管價(jià)格性價(jià)比高,為金融證券行業(yè)四川雅安電信機(jī)房,ai人工智能服務(wù)器托管提供bgp線路100M獨(dú)享,G口帶寬及機(jī)柜租用的專業(yè)成都idc公司。
1、使用裝飾器時(shí),原函數(shù)似乎沒(méi)有改變,但其元信息發(fā)生了變化——此時(shí)的原函數(shù)實(shí)際上是包裹后的wrapper函數(shù)。
2、若要保留原始函數(shù)的元信息,可以通過(guò)內(nèi)置@functools.wraps(func)實(shí)現(xiàn)。
@functools.wraps(func)的作用是通過(guò)update_wrapper和partial將目標(biāo)函數(shù)的元信息復(fù)制到wrapper函數(shù)中。
實(shí)例
# def decorator
def decorator_with_args(*args, **kwargs):
print('Step1: enter wrapper with args func.')
print(args)
print(kwargs)
def decorator_func(func):
@functools.wraps(func)
def wrapper(*args, **kwargs):
print('Step2: enter wrapper func.')
return func(*args, **kwargs)
return wrapper
return decorator_func以上就是python裝飾器保留原函數(shù)信息的方法,希望對(duì)大家有所幫助。更多Python學(xué)習(xí)指路:創(chuàng)新互聯(lián)python教程
本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。
當(dāng)前標(biāo)題:創(chuàng)新互聯(lián)Python教程:python裝飾器如何保留原函數(shù)信息
本文網(wǎng)址:http://www.5511xx.com/article/dpdscjg.html


咨詢
建站咨詢
