1 单例模式

# 单例模式:确保一个类只有一个实例,并提供一个全局访问点。class Singleton:passst = Singleton()"""在其它文件中import, 使用上述类时,无论实例化多少对象,得到对象id都是一样的,相当于实例化一个对象---> 节省内存;节省创建对象的开销"""

2 工厂模式

# -- coding: utf-8 --"""当需要大量创建一个类的实例的时候,可以使用工厂模式:即从原生的使用类的构造去创建对象的形式,迁移到基于工厂提供的方法去创建对象的形式""""""优点: 1.大批量创建对象的时候有统一的入口,易于代码的维护 2.当发生修改,仅需要修改工厂类的创建方法即可 3.符合现实世界的模式,即有工厂来制作产品(对象)"""class Person:passclass Worker(Person):passclass Student(Person):passclass Teacher(Person):passclass PersonFactory:def get_person(self, p_type):if p_type == 'worker':return Worker()elif p_type == 'student':return Student()elif p_type == 'teacher':return Teacher()else:return Nonepf = PersonFactory()worker = pf.get_person('worker')student = pf.get_person('student')teacher = pf.get_person('teacher')