廖雪峰访问限制练习题
class Student(object):
def __init__(self, name, gender):
self.__name = name
self.__gender = gender
def set_gender(self, gender):
if gender == 'male' or gender == 'female':
self.__gender = gender
#raise ValueError('bad gender')
else:
#self.__gender = gender
raise ValueError('bad gender')
def get_name(self):
return self.__name
def get__gender(self):
return self.__gender
bart = Student('Bart Simpson', 'male')
bart.set_gender('female')
print(bart.get_name(), bart.get__gender())
注意:讨论区答案有错误,主要是if的多条件判断语句应写成
if gender == 'male' or gender == 'female':
补充:关于特殊方法__init__的解释
def __init__(self,参数)