python装饰器

原创 2015年07月08日 21:50:02
装饰器是AOC(面向横切面的编程),它的功能在函数运行前与运行后完成一系列的操作,改变函数输出的结果。主要用在日志打印等方面,稍后补充。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
__author__ = 'cherry'

import time

def timeit(fn):
    def wrapper(a, b):
        print 'start: ', time.time()
        fn(a, b)
        print 'end: ', time.time()
    return wrapper


def fn(a, b):
    print a + b
    return

func = timeit(fn)
func(1, 2)#有返回值才可以调用,因此timeit必须有返回值fn
func(3, 4)

这里用内嵌函数可以保证fn函数在两次执行中都会调用timeit函数返回的结果,同时需要了解装饰器如何传递参数。

相关文章推荐

Python中装饰器的应用

  • 2014年11月08日 00:18
  • 77KB
  • 下载

Python装饰器decoder.py

  • 2017年11月15日 14:28
  • 7KB
  • 下载

python 装饰器传参

你是否方法正确,你的努力总是会带来相对的疲惫,不论是上坡路还是下坡路。没有足够休息的时间,自然就会心力交瘁,特别是不再健康的时候。如果这时还被施加各种各样的压力,你要知道自己如何做出决定才能生活向着内...

关于python的装饰器

在廖大的装饰器这一章节的task,遇到了这样的问题请编写一个decorator,能在函数调用的前后打印出'begin call'和'end call'的日志。再思考一下能否写出一个@log的decor...

Python——编写类装饰器

本文介绍了Python编写类装饰器的几个示例,包括,单体类、跟踪对象接口以及实现私有属性private...
  • ggGavin
  • ggGavin
  • 2016年03月18日 15:40
  • 7141

Python 装饰器的典型使用场景(1)

Python 装饰器的典型使用场景(1)

python Decorator装饰器用法一

python装饰器有两种类型,一种是

Python——装饰器基础

本文介绍了装饰器的基础知识,介绍了函数装饰器和类装饰器,也介绍了装饰器的嵌套以及装饰器的参数...
  • ggGavin
  • ggGavin
  • 2016年03月09日 12:57
  • 1587

Python学习笔记-装饰器

作用:Python的 decorator 本质上就是一个高阶函数,它接收一个函数作为参数,然后,返回一个新函数。就是对原函数的一种装饰作用,但是不改变原函数,只是对其调用前后增加一些操作或者信息显示。...
  • ljp1919
  • ljp1919
  • 2016年04月09日 17:50
  • 596

Python的AOP利器:装饰器

面向对象(OOP)的目的在于抽象 ,而面向切面(AOP)的目的在于解耦。在Java中面向切面编程需要使用反射(动态代理)实现,操作比较麻烦。而在Python语言中则提供了一个很好用的语法糖–装饰器....
  • iyeahme
  • iyeahme
  • 2015年09月09日 13:35
  • 1548
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python装饰器
举报原因:
原因补充:

(最多只允许输入30个字)