python :practice integrated decorator three categories

python decorator is a crucial(vital,signifiant) process.

decorator mail two category

1:principal function no arguments(parameters):

 for example:

 principal function:

decorator:

import time

def logger(flag):

     def decorator():

         def  inner():

          stat_time=time.time()

            func()

           end_time=time_time()

           print(end_time-start_time)

           if flag='true':

              print('date is ')

         return inner

   return decorator

@logger('true')

def test():

      print('hello world')

2:principal fuction have arguments:

def logger(flag):

     def decorator():

         def  inner(n):

          stat_time=time.time()

            func(n)

           end_time=time_time()

           print(end_time-start_time)

           if flag='true':

              print('date is ')

         return inner

   return decorator

from functools import reduce

@logger('true')

def factorial_array(n):

    number=reduce(lambda x,y:x*y,range(1,n+1))

    print(number)

factorial_array(100)

3:principal fuction have incert arguments:

def logger(flag):

     def decorator():

         def  inner( *args,**kwargs):

          stat_time=time.time()

            func(*args,**kwargs)

           end_time=time_time()

           print(end_time-start_time)

           if flag='true':

              print('date is ')

         return inner

   return decorator

def add(*args):

    number=0

    for i in args:

       number+=i

     print(number)

add(1,2,3,4)

decorator  integrated ,function domain,higher-order function ,closure operation.

           

猜你喜欢

转载自www.cnblogs.com/alansuny/p/12500215.html
今日推荐