
设计模式
文章平均质量分 52
Lightning-py
这个作者很懒,什么都没留下…
展开
-
Python使用策略模式和openpyxl库创建、追加、读取、删除Excel文件
【代码】Python使用openpyxl库向Excel文件指定sheet页追加内容。原创 2024-07-11 17:48:55 · 448 阅读 · 0 评论 -
Python使用策略模式绘制图片分析多组数据
【代码】Python使用策略模式绘制图片分析多组数据。原创 2024-06-24 18:20:55 · 377 阅读 · 0 评论 -
Python使用抽象工厂模式和策略模式的组合实现生成指定长度的随机数
下面是一个简单的Python示例,结合抽象工厂模式和策略模式,用于生成随机数。原创 2024-06-19 18:44:12 · 578 阅读 · 0 评论 -
Python使用策略模式生成TCP数据包
使用策略模式(Strategy Pattern)来灵活地生成不同类型的TCP数据包。包括三次握手、数据传输和四次挥手。原创 2024-06-14 15:49:35 · 666 阅读 · 0 评论 -
Python使用策略模式实现绘图功能
策略模式(Strategy Pattern)。策略模式允许定义一系列算法,将它们封装起来,使得它们可以互换。下面是一个使用策略模式的示例,展示如何传入横坐标和纵坐标内容,然后绘制不同类型的图表。绘制不同类型的图表(如折线图、柱状图和饼图)。原创 2024-06-14 14:37:02 · 653 阅读 · 0 评论 -
Python使用工厂模式和策略模式来实现解析不同的对象并对解析结果实现复杂的功能
使用工厂模式和策略模式的组合来实现。工厂模式可以用来创建不同类型的解析器对象(如解析 Excel、数组),而策略模式可以用来实现不同的功能(修改字符串、生成 Python 文件、生成 YAML 文件)。来创建不同类型的解析器对象。然后我们使用解析器对象来解析 Excel 文件,并使用策略模式来修改字符串和生成文件。你可以根据需要选择不同的策略来生成不同类型的文件。在这个示例中,我们创建了工厂类。原创 2024-05-10 17:41:53 · 485 阅读 · 1 评论 -
Python使用设计模式中的建筑模式将数据写入Excel且满足条件内容标红
该类有三个方法:`__init__`用于初始化构建器,`add_row`用于逐行添加统计结果,`export_excel`用于将构建好的Excel表格导出到文件中。worksheet.conditional_format('B2:D1000', {'type': 'cell', 'criteria': '>', 'value': 25, 'format': red_format})这行代码是用来设置 Excel 工作表中的条件格式的。是用来定位DataFrame中下一个可用的行,并将数据添加到这一行中。原创 2024-04-29 14:13:02 · 866 阅读 · 0 评论 -
Python使用设计模式中的策略模式和观察者模式实现统计各类分析结果功能
在这个示例中,我们首先定义了一个统计策略接口`StatisticsStrategy`,其中包含一个`calculate`方法用于计算统计结果。接着,我们定义了一个`StatisticsCalculator`类,它接受一个统计策略作为参数,并提供了一个`calculate`方法用于执行统计计算。最后,我们创建了一个包含不同类别数据的字典,并使用统计器来计算各类别的结果。在这个场景中,不同的统计算法可以作为不同的策略,我们可以根据需要选择合适的策略来统计各类的结果。策略模式实现统计各类的结果功能。原创 2024-04-29 11:36:35 · 332 阅读 · 0 评论 -
设计模式:迪米特法则(Law of Demeter,LoD)介绍
迪米特法则(Law of Demeter,LoD),也称为最少知识原则(Least Knowledge Principle,LKP),是面向对象设计原则之一,它强调一个对象应该对其他对象有尽可能少的了解,不要和陌生对象直接通信,而是通过中间对象来进行间接通信。这样可以降低对象之间的耦合度,减少对象对其他对象的了解。如果一个对象需要与其他对象进行通信,应该通过中间对象来进行间接通信,而不是直接调用陌生对象的方法或访问其属性。对象之间的关系应该简单明了,避免过度依赖其他对象的细节,保持对象之间的松耦合关系。原创 2024-04-25 18:29:25 · 454 阅读 · 0 评论 -
设计模式:单一职责原则(Single Responsibility Principle,SRP)介绍
单一职责原则(Single Responsibility Principle,SRP)是面向对象设计原则之一,它强调一个类应该只有一个引起变化的原因。一个类如果承担了多个职责,就容易导致功能之间的耦合,当一个功能需要修改时,可能会影响到其他功能。而遵循单一职责原则,可以降低类之间的耦合性,使得代码更加灵活和易于维护。当系统需要新增或修改功能时,可以更容易地重用已有的类,而不需要对现有的类进行大量修改。这样,每个类都只需关注自己的单一职责,使得类更加内聚,代码更加清晰。原创 2024-04-25 18:11:25 · 180 阅读 · 0 评论 -
设计模式:接口隔离原则(Interface Segregation Principle,ISP)介绍
接口隔离原则(Interface Segregation Principle,ISP)是面向对象设计原则之一,它强调一个类不应该依赖于它不需要的接口。接口隔离原则的核心思想是。将一个大的接口拆分成多个更小、更具体的接口,每个接口都应该包含客户端所需的方法。每个接口应该只包含一个单一的职责或者功能,这样可以避免客户端依赖于不需要的方法。接口应该精简、清晰,避免包含过多的方法,以确保每个接口的职责清晰明确。原创 2024-04-25 17:53:24 · 401 阅读 · 0 评论 -
设计模式:依赖倒转原则(Dependency Inversion Principle,DIP)介绍
依赖倒转原则(Dependency Inversion Principle,DIP)是面向对象设计原则之一,它强调高层模块不应该依赖于底层模块,二者都应该依赖于抽象。同时,抽象不应该依赖于具体实现细节,具体实现细节应该依赖于抽象。高层模块通过依赖注入的方式将具体实现类的对象注入到抽象接口或者抽象类中,从而实现高层模块和底层模块的解耦。这样,高层模块就不会依赖于底层模块的具体实现细节。底层模块实现抽象接口或者抽象类,从而达到高层模块和底层模块之间解耦的目的。原创 2024-04-25 17:27:26 · 517 阅读 · 1 评论 -
设计模式:合成复用原则(Composite Reuse Principle,CRP)介绍
将已有的类组合在一起,形成一个新的类,新的类可以通过调用组合类的方法来实现功能。这样,可以避免类继承所带来的耦合性和复杂性,提高代码的灵活性和可维护性。将系统划分为多个模块,每个模块都是一个相对独立的功能单元,通过组合不同的模块来实现系统的功能。在合成复用过程中,应该遵循依赖倒置原则,即依赖于抽象而不是具体实现。组合类应该依赖于抽象接口或者抽象类,而不是具体的实现类。合成复用原则(Composite Reuse Principle,CRP)是面向对象设计原则之一,它强调通过。合成复用原则的核心思想是。原创 2024-04-25 15:24:38 · 655 阅读 · 0 评论 -
设计模式:里氏代换原则(Liskov Substitution Principle,LSP)介绍
子类可以扩展父类的功能,但不能收缩或修改父类已有的功能。也就是说,子类可以在父类的行为基础上进行扩展,但不能修改或删除父类已有的行为。里氏代换原则(Liskov Substitution Principle,LSP)是面向对象设计原则的一部分,它强调。子类方法的返回类型必须与父类方法的返回类型兼容,这意味着子类方法的返回值可以是父类方法返回值的子类型。子类继承父类时,必须实现父类中声明的所有抽象方法,并且保持方法签名和语义的一致性。换句话说,子类对象应该可以在不改变程序正确性的前提下替换掉父类对象。原创 2024-04-25 15:12:43 · 1053 阅读 · 0 评论 -
设计模式:开放-封闭原则(Open-Closed Principle,OCP)介绍
开放-封闭原则(Open-Closed Principle,OCP)是面向对象设计原则之一,它指导我们编写可扩展和易维护的代码。也就是说,我们应该通过扩展现有代码来实现新功能,而不是直接修改现有代码。这样,当需要新增功能时,可以通过实现新的抽象类或接口来扩展现有功能,而不是修改原有的类或函数。客户端代码针对抽象类型编程,而不是针对具体实现编程,从而使得新的实现可以无缝替换原有实现,而不影响客户端代码。这样,在需要修改功能时,只需替换依赖对象,而不需要修改调用者的代码。原创 2024-04-25 14:51:08 · 1017 阅读 · 0 评论 -
Python迭代器模式介绍、使用
Python迭代器模式是一种设计模式,它提供了一种访问容器对象中各个元素的统一接口,而不必暴露容器内部的细节。在Python中,迭代器是指实现了__next__()方法的对象,这个方法返回容器中下一个元素,并在容器末尾时抛出StopIteration异常。通过使用迭代器模式,我们可以很方便地遍历序列、聚合和其他可迭代对象。应用场景: 在需要遍历序列或聚合(如列表、元组、字典等)的时候,可以使用迭代器模式。原创 2023-07-28 14:29:20 · 327 阅读 · 0 评论 -
Python 抽象工厂模式介绍、使用
Python 抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,它提供了一种创建对象的方式,用于创建一系列相关或相互依赖的对象。它为客户端提供了一种创建对象的接口,而不需要指定具体实现。原创 2023-07-24 15:17:18 · 651 阅读 · 0 评论