问题1.为什么使用装饰器? 扩展函数功能,减少冗余代码。 举个栗子,以下这段代码: def add(x,y): return x+y def sub(x,y): return x-y 如果想在每个函数执行时输出"加减乘除" 笨办法是在每个函数都写明: def add(x,y): print('加减乘 ...
分类:
编程语言 时间:
2020-07-12 22:17:47
阅读次数:
69
虽然适配器模式和装饰器模式的结构类似,但是每种模式的出现意图不同。适配 器模式被用于桥接两个接口,而装饰模式的目的是在不修改类的情况下给类增加 新的功能。 ...
分类:
其他好文 时间:
2020-07-12 14:08:35
阅读次数:
129
视图函数和视图类 1 视图函数 1.1 endpoint简介 endpint参数是写在注册路由的装饰器中的一个参数,学名叫端点,我们可以理解为函数的别名。原来我们翻转视图函数的url的时候是直接通过是如函数的名字,如url_for('函数名'),现在我们可以指定一个endpoint='fbv'参数来 ...
分类:
其他好文 时间:
2020-07-12 00:43:08
阅读次数:
93
装饰器 变量作用域 局部作用域 全局作用域 高阶函数 函数名可以作为参数输入 函数名可以作为返回值 闭包 示例代码 def outer(): x = 10 def inner(): print(x) return inner 定义 如果在一个内部函数里,对在外部作用域(不在大全局作用域)的变量进行引 ...
分类:
其他好文 时间:
2020-07-12 00:39:41
阅读次数:
62
import abc 指定metaclass属性将类设置为抽象类,抽象类本身只是用来约束子类的,不能被实例化 class Animal(metaclass=abc.ABCMeta): # 统一所有子类的方法 @abc.abstractmethod # 该装饰器限制子类必须定义有一个名为talk的方法 ...
分类:
编程语言 时间:
2020-07-11 23:10:49
阅读次数:
157
目录 1. 单例模式 1.饿汉式 2.懒汉式 2. 工厂设计模式 1. 普通工厂模式 2. 多个工厂方法模式 3. 静态工厂方法模式 3. 建造者模式 4. 适配器设计模式 1. 类的适配器模式: 2. 对象的适配器模式 3. 接口的适配器模式 5. 装饰模式 6. 策略模式 7. 代理模式 1. ...
分类:
编程语言 时间:
2020-07-11 23:04:22
阅读次数:
78
1.使用描述符+类的装饰器 class Typed: def __init__(self,key,type): self.key=key self.type=type def __get__(self, instance, owner): return instance.__dict__[self. ...
分类:
编程语言 时间:
2020-07-11 17:16:41
阅读次数:
80
''' 名片管理系统 名片包含的信息有: 姓名,电话 功能要求: 1、增删改查 2、显示所有信息 ''' info_dict = {} def add_info(): new_info = input('请依次输入联系人的姓名、电话,并以’,‘ 号隔开') new_list = new_info.s ...
分类:
编程语言 时间:
2020-07-11 10:01:21
阅读次数:
55
@ 什么是装饰器模式? 装饰器模式的定义: Attach additional responsibilities to an object dynamically keeping the same interface.Decorators provide a flexible alternative ...
分类:
其他好文 时间:
2020-07-11 00:24:31
阅读次数:
57