工厂模式实现了创建者和调用者的分离,使用专门的工厂类将选择实现类、创建对象进行统一的管理和控制。
 
 运行结果
 
 单例模式
 
 class CarFactory:
 _obj = None
 _init_flag = True
 def create_car(self,brand):
 if brand == ‘奔驰’:
 return Benz()
 elif brand == ‘比亚迪’:
 return BYD()
 else:
 return ‘未知品牌,无法创建’
 def new(cls, *args, **kwargs):
 if cls._obj == None:
 cls._obj = object.new(cls)
 return cls._obj
 def init(self):
 if CarFactory._init_flag:
 print(‘init CarFactory…’)
 CarFactory._init_flag = False
 class Benz:
 pass
 class BYD:
 pass
 factory = CarFactory()
 c1 = factory.create_car(‘奔驰’)
 print(c1)
 运行结果
 










