이 블로그 검색

2012년 9월 10일 월요일

python decorator


#!/usr/bin/env python
# -*- encoding:utf-8-*-
import time

def elapsed_time(functor):
    def decorated(*args, **kwargs):
        start = time.time()
        functor()
        end = time.time()
        print "Elapsed time: %f" % (end-start)
    return decorated
    
@elapsed_time
def hello():
    print 'hello'

# 위의 코드는 다음과 동일.
# def hello(*args, **kwargs):
#     print 'hello'
# 를 정의후 다음을 호출하는것과 같음,
# hello = elapsed_time(hello)
# hello()

if __name__ == "__main__":
    hello()
    # hello = elapsed_time(hello)
    # hello()

댓글 없음:

댓글 쓰기