Python装饰器
import time def display_time(func): #display_time就是装饰器名称 def wrapper(): #定义一个内函数 t1 = time.time() #写装饰器的目的就是为了不修改其他代码的情况下,能够添加一些功能,将装饰器功能写好后,@装饰器名称添加到你需要添加的方法前就行 result = func() t2 = time.time() print("totals time is {:.4}s".format(t2 - t1)) return result return wrapper def is_prime(num): if num < 2: return False elif num == 2: return True else : for i in range(2,num): if num % i == 0: return False return True @display_time def count_prime_nums(): count = 0 for i in range(2,10000): if is_prime(i): count = count + 1 return count count = count_prime_nums() print(count)
图中函数是为了实现计算2-10000所有素数的数量,并计算程序运行到结束时间,后续可能还会有计算2-10000偶数全部展示并计算时间,计算2-10000偶数有多少个并计算时间,写好计算时间装饰器,直接运用即可,代码整洁度高