我们有一个基类Person,它包含方法get_name和get_gender。有两个子类Male和Female,构造函数可以sayhello。还有一个工厂类。工厂类有一个名为get_person的方法,它有两个输入参数,name和gender。用户通过调用get_person方法使用工厂类。程序运行过程中,用户通过性别来判断实例是Male还是Female。人类:名称=无性别=无def__init__(self):通过defget_name(self):返回self.namedefget_gender(self):返回self.genderclassMale(Person):def__init__(self,name):super(Male).__init__()self.gender="Male"self.name=nameprint("HelloMr.{}".format(name))classFemale(Person):def__init__(self,name):super(Female).__init__()self.gender="Female"self.name=nameprint("HelloMiss.{}".format(name))classFactory:defget_person(self,name,gender):如果性别=="M":returnMale(name)elifgender=="F":returnFemale(name)else:raiseException("pleaseinput'M'or'F'")GENDER="F"if__name__=='__main__':factory=Factory()person=factory.get_person("Lee",GENDER)print(person.get_name())print(person.get_gender())输出:HelloMiss.LeeLeeFemale
