装饰器:
定义:本质是函数,(装饰其他函数),就是为其它函数添加附加功能
原则:1.不能修改被饰的函数的源代码
2.不能修改被饰的函数的调用方式
实现装饰器知识储备:
1.函数即“变量”
2.高阶函数
3.嵌套函数
高阶函数+嵌套函数=》实现装饰器
import time

def timeer(func):
def warpper(*args,**kwargs):
start_time=time.time()
func()
stop_time=time.time()
print('the fun run time is %s',stop_time-start_time)
return warpper @timeer
def test1():
time.sleep(3)
print('in the test1')
test1()

  

 

最新文章

  1. [体感游戏] 1、MPU6050数据采集传输与可视化
  2. C#实现AES加解密方法
  3. (C#) 发布程序,包含某些配置文件或数据文件。
  4. java 图片处理
  5. 【收藏】Linux下tomcat内存配置
  6. JAVA学习第五十七课 — IO流(十一)
  7. aliexpress 上传图
  8. unix 文件属性
  9. ubuntu12.04下 安装虚拟主机
  10. linux查看和设置系统时间 hwclock && date
  11. js 解析XML 在Edge浏览器下面 无法准确读到节点属性值
  12. Android01-布局篇
  13. MySql技术内幕之MySQL入门(2)
  14. capwap学习笔记——初识capwap(五)(转)
  15. npm ERR! Refusing to install package with name "webpack" under a package -----
  16. Macbook外接显示器模糊解决方法
  17. HTTPS原理和CA证书申请(转)
  18. ubuntu安装jdk,maven,tomcat
  19. HTML5之SVG
  20. [PHP] 重回基础(Array相关函数)

热门文章

  1. 遍历json字符串 并 写入对应的文本框
  2. C# Stack堆栈的使用方法
  3. Python使用Zero-Copy和Buffer Protocol实现高性能编程
  4. JSP,EL和JSTL
  5. 入侵检测系统 - ossec
  6. nexus私服的搭建和使用
  7. java中静态代码块的用法 static用法详解和static静态导入
  8. 关于Git的一些操作记录
  9. POJ 2891 Strange Way to Express Integers excrt/我真傻,真的
  10. chapter07