""" 实例: 汤宝宝炒西红柿鸡蛋。 """ from abc import ABC, abstractmethod class Dish(ABC): @abstractmethod def prepare_ingredients(self): pass @abstractmethod def cook(self): pass @abstractmethod def serve(self): pass def do_cooking(self): print("第一步:", end="") self.prepare_ingredients() print("第二步:", end="") self.cook() print("第三步:", end="") self.serve() class TomatoEggDish(Dish): def prepare_ingredients(self): print("准备西红柿和鸡蛋。") def cook(self): print("炒西红柿和鸡蛋。") def serve(self): print("装盘,西红柿鸡蛋炒好了。") if __name__ == "__main__": print("========== 模板方法模式 ==========") dish = TomatoEggDish() dish.do_cooking() print("\n======== 模板方法模式结束 ========")