class Leader: def __init__(self): pass def setSuperior(self, Obj): self.superior = Obj def approval(self, day): pass class GroupLeader(Leader): def approval(self, day): if day >= 1 and day < 3: print('group leader 审批通过') else: self.superior.approval(day) class Manager(Leader): def approval(self, day): if day >=3 and day < 5: print('manager 审批通过') else: self.superior.approval(day) class Majordomo(Leader): def approval(self, day): if day >= 5: print('majordomo 审批通过') if __name__ == '__main__': groupLeader = GroupLeader() manager = Manager() majordomo = Majordomo() groupLeader.setSuperior(manager) manager.setSuperior(majordomo) groupLeader.approval(9)