av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

創(chuàng)新互聯(lián)Python教程:python帶參數(shù)的裝飾器怎么寫?

1、裝飾器說明

裝飾器看上去并沒有任何參數(shù)(使用 @ 時(shí)被裝飾的方法作為隱式參數(shù)傳遞給裝飾器)。但是,有時(shí)候讓裝飾器自帶一些參數(shù),可以提供更靈活的應(yīng)用。

2、實(shí)例

我們改寫 requires_ints,使其還可以限制被裝飾函數(shù)的參數(shù)的數(shù)量:

from functools import wraps
 
def requires_ints(count=0):
    
    def decorator(func):
        @wraps(func)
        def wrapper(*args, **kwargs):
            values = [i for i in kwargs.values()]
            args_list = list(args) + [i for i in kwargs.values()]
            
            if count == 0:
                # Not limit
                pass
            elif len(args_list) > count:
                raise Exception(f'The number of arguments cannot more than {count}')
            
            for arg in args_list:
                if not isinstance(arg, int):
                    raise TypeError('Only accept integers.')
            return func(*args, **kwargs)
 
        return wrapper
    return decorator
 
 
@requires_ints(5)
def add(*args):
    '''Return the sum of all arguments'''
    return sum(args)

以上就是python帶參數(shù)裝飾器的寫法,希望能對(duì)大家有所幫助,更多知識(shí)盡在python學(xué)習(xí)網(wǎng)。


名稱欄目:創(chuàng)新互聯(lián)Python教程:python帶參數(shù)的裝飾器怎么寫?
本文來源:http://uogjgqi.cn/article/dpeiigo.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流