@unique
class Gender(Enum):
Male = 0
Female = 1
class Student(object):
def __init__(self, name, gender):
self._name = name
if isinstance(gender, Gender): # 传入"Gender"枚举对象
self._gender = gender
elif isinstance(gender, str): # 传入枚举key
if not gender in Gender.__members__: raise ValueError('"gender"参数非法')
self._gender = Gender[gender]
elif isinstance(gender, int): # 传入枚举value
if not gender in set(g.value for g in Gender): raise ValueError('"gender"参数非法')
self._gender = Gender(gender)
@property
def name(self):
return self._name
@property
def gender(self):
return self._gender
EddieLau_