装饰器的理解

Posted 彩色的大卷发

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了装饰器的理解相关的知识,希望对你有一定的参考价值。

一个比喻:

人类穿着内裤很大程度上是为了遮羞和对关键部位进行保护,但是却不能提供保暖。因此我们还需要穿着长裤。长裤就是对内裤功能的补充,却不影响内裤本身的功能。

 

装饰器介绍

python中的装饰器的目的是为一个目标函数添加额外的功能却不修改函数本身。装饰器的本身其实是一个特殊的函数。主要的应用场景有插入日志,性能测试、事务处理等。

    @函数为python的语法糖

 

import logging
import time


def logging_first(func):
def wrapper(x, y):
logging.warning(time.strftime("%Y-%m-%d %H:%M:%S %Z", time.localtime(time.time())))
return func(x, y)

return wrapper


@logging_first
def func_sum(x, y):
print( x + y)


@logging_first
def func_minus(x, y):
print( x - y)


@logging_first
def func_multiply(x, y):
print( x * y)

func_sum(20, 30)
func_minus(20, 30)
func_multiply(20, 30)

 

以上是关于装饰器的理解的主要内容,如果未能解决你的问题,请参考以下文章

装饰器的理解

Python学习---装饰器的学习1210

Python装饰器的通俗理解

python装饰器的简单理解

装饰器的理解

理解Python装饰器