装饰器
import time
#判断素数
def sushu(n):
if n < 2:
return False
else:
for i in range(2,n):
if n%i==0:
return False
return True
#无参
def wucan_time(function):
def wrapper():
t1 = time.time()
jieguo = function()
t2 = time.time()
print("无参运行时间:{:.6}s".format(t2-t1))
return jieguo
return wrapper
#有参
def youcan_time(function):
def wrapper(*args,**kwargs):
t1 = time.time()
jieguo = function(*args,**kwargs)
t2 = time.time()
print("有参运行时间:{:.6}s".format(t2-t1))
return jieguo
return wrapper
@wucan_time
def num1():
j=0
for i in range(1,9999):
if sushu(i):
print(i)
j+=1
return j
@youcan_time
def num2(m,n):
time.sleep(1)
j=0
for i in range(m,n):
if sushu(i):
print(i)
j+=1
return j
@youcan_time
def num3(m,n,k):
time.sleep(1)
return m*n*k
jg1=num1()
print("无参素数个数:",jg1)
jg2=num2(1,88)
print("有参素数个数:",jg2)
jg3=num3(77,88,99)
print("乘积为:",jg3)