2022年9月22日

设计模式-结构型模式之代理

摘要: 解耦调用方与被调用方之间的关系 1 class Valley: 2 3 def test(self): 4 print(1) 5 6 7 class Proxy: 8 """代理类""" 9 10 def __init__(self, real_obj): 11 self.proxy = real_ 阅读全文

posted @ 2022-09-22 22:56 默玖 阅读(11) 评论(0) 推荐(0) 编辑

设计模式-结构型模式之外观

摘要: 简化应用程序内部接口,提供一个单一接口以供外部(前端or客户侧)调用 1 class Valley: 2 3 def run(self): 4 self.pre_declare() 5 self.declare() 6 self.after_declare() 7 8 def pre_declare 阅读全文

posted @ 2022-09-22 22:43 默玖 阅读(19) 评论(0) 推荐(0) 编辑

设计模式-创建型模式之工厂

摘要: 一、简单工厂 创建对象的工作交由统一的函数接口来管理,传入不同的参数,返回不同的类对象 1 class AqSb: 2 3 def __repr__(self): 4 return "按期申报页面" 5 6 7 class QtSb: 8 9 def __repr__(self): 10 retur 阅读全文

posted @ 2022-09-22 14:19 默玖 阅读(22) 评论(0) 推荐(0) 编辑

快速实现上下文管理器

摘要: 我们都知道,在类中实现__enter__、__exit__方法即可成为上下文管理器,这里主要浅谈一下上下文管理器的另外一种快速实现方式 上下文管理器:可以理解为装饰器,在主体程序的执行前后执行一些必要的操作,使用yield分离 1 import contextlib 2 3 4 @contextli 阅读全文

posted @ 2022-09-22 11:15 默玖 阅读(17) 评论(0) 推荐(0) 编辑

浅用描述符

摘要: 可以理解为property方法的一种进阶,都可以用来创建一种新形式的实例属性,即在实例属性值的获取和设定上,增加额外的处理事务,such as:类型检查、验证 重写三个属性访问方法,其中__delete__方法是否重写取决需求 在类层次上引用描述符,即该类遵从描述符协议 1 class Check: 阅读全文

posted @ 2022-09-22 10:55 默玖 阅读(17) 评论(0) 推荐(0) 编辑

优化大量的property

摘要: 首先我们要清楚property方法的定义规则: 1、使用@property装饰方法,被装饰的方法变成属性 2、给属性附加setter等特性,也就意味着在给此属性赋值时,会自动触发此方法的执行 1 def expected_type(name, type): 2 storage_name = "_" 阅读全文

posted @ 2022-09-22 10:33 默玖 阅读(18) 评论(0) 推荐(0) 编辑

导航