从上学期学的设计模式来看,设计模式一共分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、 ...
分类:
其他好文 时间:
2017-04-03 20:04:29
阅读次数:
195
装饰器 定义:本质是函数,(装饰其他函数),即为其他函数添加附加功能。 原则: 1、不能修改被装饰的函数的源代码; 2、不能修改被装饰的函数的调用方式。实现装饰器知识储备: 1. 函数即'变量' 2. 高阶函数 a. 把一个函数名当作实参传递给另一个函数(在不修改被装饰函数源代码的前提下为其添加新功 ...
分类:
编程语言 时间:
2017-04-03 19:36:28
阅读次数:
205
一、复习 二、装饰器 三、生成器 四、迭代器 五、内置函数 六、目录规范 ...
分类:
其他好文 时间:
2017-04-01 09:28:40
阅读次数:
185
2017.3.31 反正我认为我写的东西如此的low,应该也不会有人理睬;暂且容忍自己的自言自语吧!我这是病有加重了,是该吃药了!可惜,没有特效药来吃,只能凭借自己的意志力扛了!谁让咱没钱,自救是最省钱最便捷的手段;抱怨过后,好多了,自救开始…… 现今大三的我,打算从设计模式抓起; 别人问你设计模式 ...
分类:
其他好文 时间:
2017-03-31 17:38:03
阅读次数:
126
#!/usr/bin/evnpython
#_*_coding:utf-8-*-
importsocket
defauth(func):
definner(*args,**kwargs):
print‘befor‘
temp=func(*args,**kwargs)
print‘after‘
returntemp
returninner
@auth
defcpu():
print"CPU性能告警"
@auth
defdisk():
print"磁盘满了,快点删啊!"
..
分类:
编程语言 时间:
2017-03-30 19:57:48
阅读次数:
139
1. 概述 若你从事过面向对象开发,实现给一个类或对象增加行为,使用继承机制,这是所有面向对象语言的一个基本特性。如果已经存在的一个类缺少某些方法,或者须要给方法添加更多的功能(魅力),你也许会仅仅继承这个类来产生一个新类—这建立在额外的代码上。 通过继承一个现有类可以使得子类在拥有自身方法的同时还 ...
分类:
其他好文 时间:
2017-03-28 16:30:37
阅读次数:
135
#多继承classA:defshow(self):print(‘AAAA‘)classB:deffun(self):print(‘BBBB‘)classC(B,A):passx=C()#类的特殊方法‘‘‘类属性:__dict__:类的属性(包含一个字典,由类的数据属性组成)__doc__:类的文档字符串__name__:类名‘‘‘x=‘a\nb‘#print(repr(x))#实例调用:‘‘‘__init__初..
分类:
编程语言 时间:
2017-03-28 11:32:38
阅读次数:
206
本章内容:装饰器迭代器&生成器re正则表达式字符串格式化装饰器装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志、性能测试、事务处理等。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷..
分类:
编程语言 时间:
2017-03-26 14:39:37
阅读次数:
258
装饰器(语法糖)的原则及构成: 原则: 1、不能修改被装饰函数的源代码。 2、不能修改被装饰函数的调用方式。 3、不能改变被装饰函数的执行结果。 装饰器对被装饰函数是透明的。 如何理解装饰器 1、函数即“变量” 2、高阶函数 a:把一个函数名作为实参传递给另外一个函数 b:返回值中包含函数名 3、嵌 ...
分类:
编程语言 时间:
2017-03-26 11:59:52
阅读次数:
205
1.python装饰器的缺点 装饰器可以允许我们在不改变函数或犯方法的调用方式的情况下,添加额外的功能; 如下所示,我们要在中的方法之前增加装饰器check_is_admin,用来判断执行类的方法的用户是否为admin用户; 但是,经过装饰器修饰的函数,其func_name和func_doc的属性都 ...
分类:
编程语言 时间:
2017-03-23 18:42:12
阅读次数:
473