擅长:python、mysql、java
<p>您可以使用内置函数<a href="https://docs.python.org/2/library/functions.html#property" rel="nofollow">property</a>来实现这一点</p>
<p>实际上,您为您的currRating创建“setter”方法,以便在通过调用目标电流您可以检查它是否在最小值和最大值之间:</p>
<p>例如:</p>
<pre><code>class Machine(object):
def __init__(self, name, max_rating, min_rating, cur_rating=1):
self.max_rating = max_rating
self.min_rating = min_rating
self._cur_rating = cur_rating
@property
def cur_rating(self):
return self._cur_rating
@cur_rating.setter
def cur_rating(self, value):
if value > self.max_rating or value < self.min_rating:
raise Exception()
self._cur_rating = value
</code></pre>
<p>您仍然可以访问变量目标电流额定值=10个</p>