将调用接口统一化,从而定义一个算法的骨架,即定义元方法集,而将一些步骤的执行延迟到子类中,模板方法使得子类可以不改变算法的结构即可重定义该算法的某些特定步骤,也就是说,在父类中定义一个完成该事情的总方法。每个步骤的具体实现,由子类完成,之后子类再按照完成事件需要去调用其每个步骤的实现方法。

# -*- coding: utf-8 -*-


class Register(object):
    """用户注册接口"""

    def register(self):
        pass

    def login(self):
        pass
        
	"""认证的方法集"""
    def auth(self):
        self.register()
        self.login()


class RegisterByMail(Register):
    """邮箱注册"""

    def register(self):
        print("---用邮箱注册-----")

    def login(self):
        print("----用邮箱登录-----")


class RegisterByPhone(Register):
    """手机号注册"""

    def register(self):
        print("---用手机号注册-----")

    def login(self):
        print("----用手机号登录-----")


if __name__ == "__main__":

    register1 = RegisterByMail()
    register1.auth()

    register2 = RegisterByPhone()
    register2.auth()
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐