class Student:
valid_range = range(1000, 10000) # legal values will be 1000-9999
def __init__(self, name, number):
self.name = name
self.number = number
def __repr__(self):
return '{}: {}'.format(self.name, self.number)
@property
def number(self):
return self._number
@number.setter
def number(self, number):
if number in Student.valid_range:
self._number = number
else:
raise ValueError('Student number out of range: {}'.format(number))
查找python属性:http://www.python-course.eu/python3_properties.php
它不仅会检查
number
在Student
实例化时是否有效,而且每次设置Student.number
时都会检查:相关问题 更多 >
编程相关推荐