制作 Foo() 類的最佳方法是什么:
>>> p=Foo()
>>> print (p.x) => p.x = 0
>>> p.x = 125
>>> print (p.x) => p.x = 25 (tens of 125)
uj5u.com熱心網友回復:
您可以使用 getter 和 setter。根據您是要在實體中存盤余數還是未修改的值,將計算余數的邏輯分別放置在 setter 或 getter 中。
class Foo:
def __init__(self):
self._x = 0
@property
def x(self):
return self._x
@x.setter
def x(self, x):
self._x = x % 100
(作為旁注,默認使用 getter 和 setter(在其他一些語言中很常見)被認為是 unpythonic。在這里,需要它們(或它的一些變體)來根據您的規則/要求更改設定或檢索的值。 )
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/363452.html
