欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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)文章

  • Pandas數(shù)據(jù)分析的一些常用小技巧

    Pandas數(shù)據(jù)分析的一些常用小技巧

    這篇文章主要介紹了Pandas數(shù)據(jù)分析的一些常用小技巧,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • python實(shí)現(xiàn)貪吃蛇小游戲

    python實(shí)現(xiàn)貪吃蛇小游戲

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)貪吃蛇小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Python實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)的示例代碼

    Python實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)的示例代碼

    夏天是用來(lái)告別的季節(jié),因?yàn)楫厴I(yè)總在七月。那么七月之前的季節(jié)是用來(lái)干嘛的呢?當(dāng)然是用來(lái)做畢業(yè)設(shè)計(jì)的啦!本文為大家準(zhǔn)備了兩個(gè)版本的學(xué)生信息管理系統(tǒng),希望對(duì)大家有所幫助
    2023-02-02
  • 使用Django的模版來(lái)配合字符串翻譯工作

    使用Django的模版來(lái)配合字符串翻譯工作

    這篇文章主要介紹了使用Django的模版來(lái)配合字符串翻譯工作,Django是最具人氣的Python開(kāi)發(fā)框架,需要的朋友可以參考下
    2015-07-07
  • 一文掌握6種Python中常用數(shù)據(jù)庫(kù)操作及代碼

    一文掌握6種Python中常用數(shù)據(jù)庫(kù)操作及代碼

    在數(shù)據(jù)處理和管理領(lǐng)域,Python作為一種高效、易用的編程語(yǔ)言,擁有豐富的數(shù)據(jù)庫(kù)操作模塊,可以輕松實(shí)現(xiàn)對(duì)關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)操作,本文將介紹六種常見(jiàn)的Python數(shù)據(jù)庫(kù)操作模塊,需要的可以參考下
    2023-12-12
  • Python?__all__變量用法示例詳解

    Python?__all__變量用法示例詳解

    這篇文章主要介紹了Python?__all__變量用法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • 基于Python實(shí)現(xiàn)語(yǔ)音識(shí)別功能

    基于Python實(shí)現(xiàn)語(yǔ)音識(shí)別功能

    這篇文章給大家介紹了如何基于Python實(shí)現(xiàn)語(yǔ)音識(shí)別功能,文中通過(guò)代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-12-12
  • Python3實(shí)現(xiàn)的簡(jiǎn)單工資管理系統(tǒng)示例

    Python3實(shí)現(xiàn)的簡(jiǎn)單工資管理系統(tǒng)示例

    這篇文章主要介紹了Python3實(shí)現(xiàn)的簡(jiǎn)單工資管理系統(tǒng),涉及Python文件讀寫(xiě)、數(shù)據(jù)遍歷、判斷等相關(guān)操作技巧,需要的朋友可以參考下
    2019-03-03
  • Python使用latexify模塊實(shí)現(xiàn)將代碼為數(shù)學(xué)公式

    Python使用latexify模塊實(shí)現(xiàn)將代碼為數(shù)學(xué)公式

    latexify 是一個(gè)輕量級(jí)的 Python 模塊,可以將 Python 代碼轉(zhuǎn)換為 LaTeX 格式的數(shù)學(xué)表達(dá)式,這篇文章就來(lái)和大家探索一下如何使用latexify模塊實(shí)現(xiàn)將代碼為數(shù)學(xué)公式吧
    2023-12-12
  • linux查找當(dāng)前python解釋器的位置方法

    linux查找當(dāng)前python解釋器的位置方法

    今天小編就為大家分享一篇linux查找當(dāng)前python解釋器的位置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02

最新評(píng)論