您的当前位置:首页正文

python装饰器的常见用途

2024-07-16 来源:尚车旅游网

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
# 这是我们的偶数数组,已排序
数组 = [x for x in range(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学习指路:

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

显示全文