博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第十一天笔记
阅读量:6555 次
发布时间:2019-06-24

本文共 440 字,大约阅读时间需要 1 分钟。

一、什么是装饰器

器:指的是具备某一功能的工具。 装饰:指的是为被装饰器添加新功能。

装饰器就是用来为被装饰器对象添加新功能的工具(注意:装饰器本身可以是任意可调用对象,被装饰的对象也可以是任意可调用对象)

二、为何要用装饰器

开放封闭原则:封闭指的是对修改封闭,对扩展开放

装饰器的实现必须遵守俩大原则:

1.不修改被装饰对象的源代码

2.不修改被装饰器对象的调用方式

装饰器的目标:就是在遵循1和2的原则的前提下为被装饰对象添加上新功能。

装饰器的语法糖:在被装饰对象正上方单独一行写@装饰器的名字

运行原理:

python解释器一旦运行到@装饰器的名字,就会调用装饰器,然后将被装饰函数的内存地址当作参数传给装饰器,最后将装饰器调用的结果赋值给原函数名

补充:所有的数据类型的值自带布尔值,可以直接当作条件去用,只需要记住布尔值为假的那一些值即可(0,空,None)

 

转载于:https://www.cnblogs.com/zhouhao123/p/9401254.html

你可能感兴趣的文章
The Google File System(前五章,翻译的略乱)
查看>>
RUP 迭代开发计划的两种方法
查看>>
PHP中static关键字
查看>>
python处理xml实例
查看>>
从《一生所爱》到《世间始终你好》
查看>>
UIStackView相关
查看>>
数据库
查看>>
20145240问卷调查
查看>>
[linux] uptime 命令中关于平均负载的解释
查看>>
Algs4-1.4.25扔两个鸡蛋
查看>>
Algs4-2.4.22调优先队列的整数组大小
查看>>
设计模式之建造者
查看>>
模块化的JavaScript开发的优势在哪里
查看>>
上海某软件公司电话面试分享
查看>>
TCP 和 UDP 协议发送数据包的大小 (转载)
查看>>
用Alamofire进行网络请求的一段代码解析(一)
查看>>
elasticsearch的percolator操作
查看>>
windows 定时任务:schtasks,定时关闭网易云音乐
查看>>
C# Note17: 使用Ionic.Zip.dll实现解压缩文件
查看>>
Mina Basics 06-传输
查看>>