猿问

我可以在 python 中定义 setter 吗?

我想在 python 中创建一个具有属性设置器的类。


例如,假设我们有一个名为的类myClass并且它具有x属性。我想创建它,以便当有人更改 x 值时,只(x % 100)保存x 的最后两位数字。


在 python shell 中使用 myClass:


>>> obj = myClass()

>>> obj.x = 352562

>>> obj.x

62

我可以定义一个在更改 的值时自动调用的 setterx吗?


三国纷争
浏览 139回答 1
1回答

皈依舞

您可以使用属性装饰器@propertydef x(self):    return self._x@x.setterdef x(self, value):    self._x = value % 100此外,您必须在init方法中声明和初始化 _x以获得更安全的代码
随时随地看视频慕课网APP

相关分类

Python
我要回答