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

Python decorator攔截器代碼實例解析

 更新時間:2020年04月04日 08:43:34   作者:西城老李  
這篇文章主要介紹了Python decorator攔截器代碼實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

這個decorator是什么意思呢?

很簡單,它接受一個log的參數(shù),即傳入logger對象。然后它會先把函數(shù)名打印出來,接下來,會利用enumerate函數(shù),將args、kwargs的任意參數(shù)給展開,并按順序輸出。最后,它再將func以這些參數(shù)包裝回去,繼續(xù)進(jìn)行函數(shù)的執(zhí)行和結(jié)果返回。

例1 最簡單

def get_text(name):
  return "hello, {0}".format(name)

def p_decorate(func):
  def func_wrapper(name):
    return "<p>{0}</p>".format(func(name))
  return func_wrapper

my_get_text = p_decorate(get_text)
print(my_get_text("zhangsan"))

例2 參數(shù)通用化

def p_decorate(func):
  def func_wrapper(*args, **kwargs):
    return "<p>{0}</p>".format(func(*args, **kwargs))
  return func_wrapper

class Person(object):
  def __init__(self):
    self.name = "Neng"
    self.family = "Xiong"

  @p_decorate
  def get_fullname(self):
    return self.name+" "+self.family

my_person = Person()
print(my_person.get_fullname())

例3 根據(jù)參數(shù),實現(xiàn)動態(tài)攔截器

def tags(tag_name):
  def tags_decorator(func):
    def func_wrapper(*args, **kargs):
      return "<{0}>{1}</{0}>".format(tag_name, func(*args, **kargs))
    return func_wrapper
  return tags_decorator

@tags("div")
@tags("p")
@tags("strong")
def get_text(name):
  return "hello, "+name

print(get_text("zhangsan"))

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python進(jìn)行特征提取的示例代碼

    Python進(jìn)行特征提取的示例代碼

    這篇文章主要介紹了Python進(jìn)行特征提取的示例代碼,幫助大家更好的進(jìn)行數(shù)據(jù)分析,感興趣的朋友可以了解下
    2020-10-10
  • python實現(xiàn)一個函數(shù)版的名片管理系統(tǒng)過程解析

    python實現(xiàn)一個函數(shù)版的名片管理系統(tǒng)過程解析

    這篇文章主要介紹了python實現(xiàn)一個函數(shù)版的名片管理系統(tǒng)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • Matplotlib 折線圖plot()所有用法詳解

    Matplotlib 折線圖plot()所有用法詳解

    這篇文章主要介紹了Matplotlib 折線圖plot()所有用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 簡潔的十分鐘Python入門教程

    簡潔的十分鐘Python入門教程

    這篇文章主要介紹了簡潔的十分鐘Python入門教程,Python語言本身的簡潔也使得網(wǎng)絡(luò)上各種Python快門入門教程有著很高的人氣,本文是國內(nèi)此類其中的一篇,需要的朋友可以參考下
    2015-04-04
  • Python中str.join()簡單用法示例

    Python中str.join()簡單用法示例

    這篇文章主要介紹了Python中str.join()簡單用法,結(jié)合實例形式分析了Python中str.join()用于連接生成新字符串的相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03
  • 判斷python對象是否可調(diào)用的三種方式及其區(qū)別詳解

    判斷python對象是否可調(diào)用的三種方式及其區(qū)別詳解

    今天小編就為大家分享一篇判斷python對象是否可調(diào)用的三種方式及其區(qū)別詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • 詳解Python中的函數(shù)參數(shù)傳遞方法*args與**kwargs

    詳解Python中的函數(shù)參數(shù)傳遞方法*args與**kwargs

    本文將討論Python的函數(shù)參數(shù)。我們將了解args和kwargs,/和的都是什么,雖然這個問題是一個基本的python問題,但是在我們寫代碼時會經(jīng)常遇到,比如timm中就大量使用了這樣的參數(shù)傳遞方式
    2023-03-03
  • Python多路復(fù)用selector模塊的基本使用

    Python多路復(fù)用selector模塊的基本使用

    Python提供了selector模塊來實現(xiàn)IO多路復(fù)用,這篇文章給大家介紹了Python多路復(fù)用selector模塊的基本使用,感興趣的朋友一起看看吧
    2021-11-11
  • Python實現(xiàn)二叉搜索樹

    Python實現(xiàn)二叉搜索樹

    二叉搜索樹(二叉排序樹)它的每個節(jié)點的數(shù)據(jù)結(jié)構(gòu)為1個父節(jié)點指針,1個左孩子指針,1個有孩子指針,還有就是自己的數(shù)據(jù)部分了,因為只有左右兩孩子,所以才叫二叉樹,在此基礎(chǔ)上,該二叉樹還滿足另外一個條件:每個結(jié)點的左孩子都不大于該結(jié)點&&每個結(jié)點的右孩子都大于該結(jié)點.
    2016-02-02
  • Python小整數(shù)對象池和字符串intern實例解析

    Python小整數(shù)對象池和字符串intern實例解析

    這篇文章主要介紹了Python小整數(shù)對象池和字符串intern實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03

最新評論

项城市| 双柏县| 曲靖市| 夏津县| 鹤山市| 休宁县| 宁德市| 临漳县| 美姑县| 泗水县| 澎湖县| 玉林市| 临汾市| 钟祥市| 铜川市| 逊克县| 竹溪县| 浮山县| 都昌县| 剑阁县| 满城县| 公安县| 新宁县| 内江市| 泸溪县| 色达县| 肥城市| 谷城县| 阿尔山市| 蒙城县| 玉环县| 松潘县| 北碚区| 昌宁县| 渭源县| 汉阴县| 江津市| 黄浦区| 天柱县| 大英县| 阿荣旗|