简单工厂模式:
定义一个产品类,将处于同于产品等级下的产品继承这个类,再加一个工厂类,通过if语句判断
缺点是不符合开闭原则,一旦更改需求,就要修改整段代码
# 定义一个雷表示4S店
class CarStore:
def sell_car():
pass
# 奔驰的出售
class Benz(CarStore):
def sell_car(self):
print("你购买的是奔驰SUV。")
print("价格是232.88W。")
print("加速至100公里每小时只需要四秒钟。")
print("是你最正确的选择。")
# 宝马的出售
class BMW(CarStore):
def sell_car(self):
print("你购买的是BMWest系列跑车。。")
print("价格是100W。")
print("加速至100公里每小时只需要3.9秒钟。")
print("是你最独一无二的选择。")
# 工厂类
class Factory():
def __init__(self,p):
self.p = p
self.car = choose_pattern()
def choose_pattern(self):
if self.p == "BMW":
return BMW()
if self.p == "Benz":
return Benz()
else:
print("没有这款型号")
t = Factory("Benz")
t = t.choose_pattern()
t.sell_car()
print("=====================")
a = Factory("BMW")
a = a.choose_pattern()
a.sell_car()
>>>你购买的是奔驰SUV。
价格是232.88W。
加速至100公里每小时只需要四秒钟。
是你最正确的选择。
=====================
你购买的是BMWest系列跑车。。
价格是100W。
加速至100公里每小时只需要3.9秒钟。
是你最独一无二的选择。