python装饰器的常见用途

1、可以快速对数组进行排序(具有O(n2)时间复杂度)

定义插入排序(arr):
对于范围内的i(1,len(arr)):
j=i-1
而arr[j]>arr[j+1]和j>=0:
arr[j],arr[j+1]=arr[j+1],arr[j]
j-=1
打印“已排序”。

2、在装饰器的帮助下,我们只需几行代码就可以为世界上的每个函数添加计时器。

Python中的函数是一等公民,即:它们可以传递、分配给变量并从其他函数返回。

#匿名函数,以毫秒为单位返回当前时间。
current_millitime=lambda:time()*1000
#这是我们的偶数数组,已排序
数组=[xforxinrange(100)如果不是x%2]
#弄乱我们的数组以将其提供给InsertionSort
洗牌(数组)

#插入排序算法
定义插入排序(arr):
对于范围内的i(1,len(arr)):
j=i-1
而arr[j]>arr[j+1]和j>=0:
arr[j],arr[j+1]=arr[j+1],arr[j]
j-=1
打印“排序”。

定义装饰器(功能):
def包装器(*args,**kwargs):
t1=current_millitime()
函数(*args,**kwargs)
t2=current_millitime()-t1

打印"""函数{}在{}中运行
毫秒
""".format(function.__name__,t2)
返回包装器

以上就是python装饰器的常见用途,希望对大家有所帮助。更多Python学习指路:Python基础教程

发表回复