最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python中裝飾器的理解與使用詳解

 更新時(shí)間:2023年07月27日 09:11:40   作者:晚風(fēng)吹兒  
這篇文章主要介紹了python中裝飾器的理解與使用詳解,裝飾器本質(zhì)上是一個(gè)閉包函數(shù),其作用在于可以為其他函數(shù)增加額外功能,裝飾器的返回值是一個(gè)函數(shù)對(duì)象,需要的朋友可以參考下

一、裝飾器

裝飾器是給現(xiàn)有的模塊增添新的小功能,可以對(duì)原函數(shù)進(jìn)行功能擴(kuò)展,而且還不需要修改原函數(shù)的內(nèi)容,也不需要修改原函數(shù)的調(diào)用

裝飾器本質(zhì)上是一個(gè)閉包函數(shù),其作用在于可以為其他函數(shù)增加額外功能,裝飾器的返回值是一個(gè)函數(shù)對(duì)象

二、定義一個(gè)裝飾器

1.裝飾器格式

代碼如下(示例):

def 裝飾器名(func):
    def wrapper(*args, **kwargs):
        #額外功能的代碼
        ...  
        return func(*args, **kwargs)
    return wrapper

2.裝飾器示例

代碼如下(示例):

def logger(func):
    def wrapper(*args, **kwargs):
        """wrapper注釋"""
        start_time = time.time()
        res = func(*args, **kwargs)
        end_time = time.time()
        print("函數(shù)名:{}".format(func.__name__))
        print("函數(shù)注釋內(nèi)容:{}".format(func.__doc__))
        print("入?yún)?args :{}".format(args))
        print("入?yún)?kwargs :{}".format(kwargs))
        print("返回值:{}".format(res))
        print("函數(shù)執(zhí)行耗時(shí):{:.6f}".format(start_time - end_time))
        return res
    return wrapper

3.裝飾器調(diào)用

代碼如下(示例):

@logger
def test_one():
   "我是第一個(gè)裝飾器"
   print("我調(diào)用了裝飾器")

4.裝飾器運(yùn)行后輸出

在這里插入圖片描述

三、 總結(jié)

1、裝飾器是一個(gè)閉包函數(shù),包括內(nèi)嵌函數(shù),返回值是一個(gè)函數(shù)對(duì)象

2、需要裝飾的函數(shù)前要加上調(diào)用格式:@裝飾器名

到此這篇關(guān)于python中裝飾器的理解與使用詳解的文章就介紹到這了,更多相關(guān)python中的裝飾器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

同仁县| 盱眙县| 丰宁| 星座| 奉新县| 北碚区| 乌拉特前旗| 温泉县| 柯坪县| 赤城县| 建昌县| 万载县| 泗水县| 黔江区| 新郑市| 西安市| 剑川县| 洱源县| 错那县| 息烽县| 泌阳县| 娄烦县| 曲松县| 聂拉木县| 阳高县| 虎林市| 乌什县| 莱阳市| 闻喜县| 祁连县| 建德市| 涞源县| 松滋市| 墨玉县| 乾安县| 五河县| 新龙县| 高尔夫| 阿克| 肃宁县| 左权县|