Python Code:装饰器
Learning Note:
本文是关于Python中装饰器的使用的说明。
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
#coding:utf-8 # Importing import time __author__ = 'adamhuan' # Start def start_here(name): def relation_function(max_by_userinput): def print_me(a): print "Created by:",name max_by_userinput(a) #print "End,..." return print_me return relation_function def finished_time(max_by_userinput): def print_me_end(a): max_by_userinput(a) print "Finished:",time.strftime('%Y-%m-%d %H:%M:%S') return print_me_end # Define Function def return_max(*args): print "最大值为:",max(args) @start_here("Adamhuan") @finished_time def max_by_userinput(user_input): user_input_list = user_input.split(',') user_input_list_size = len(user_input_list) string_exec = "return_max(" for loop_count in xrange(user_input_list_size): if (loop_count == (user_input_list_size-1)): string_exec += "user_input_list[" + str(loop_count) + "])" else: string_exec += "user_input_list[" + str(loop_count) + "]," exec string_exec # Running user_input = raw_input("Input Something(以“,”分隔):") print "你的输入为:",user_input print "————————————" # The Max max_by_userinput(user_input) #----------------------------------- # Ending。 |
执行效果如下:
1 2 3 4 5 6 7 8 9 |
C:\Python27\python.exe D:/adamhuan_data/Python_Project/AboutFunction/AboutFunction.py Input Something(以“,”分隔):23,490,549,34.2 你的输入为: 23,490,549,34.2 ———————————— Created by: Adamhuan 最大值为: 549 Finished: 2015-03-19 14:15:29 Process finished with exit code 0 |
————————————————————————
Ending。