为了账号安全,请及时绑定邮箱和手机立即绑定

我可以在 python 中定义 setter 吗?

我可以在 python 中定义 setter 吗?

三国纷争 2021-08-11 22:44:19
我想在 python 中创建一个具有属性设置器的类。例如,假设我们有一个名为的类myClass并且它具有x属性。我想创建它,以便当有人更改 x 值时,只(x % 100)保存x 的最后两位数字。在 python shell 中使用 myClass:>>> obj = myClass()>>> obj.x = 352562>>> obj.x62我可以定义一个在更改 的值时自动调用的 setterx吗?
查看完整描述

1 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

您可以使用属性装饰器


@property

def x(self):

    return self._x


@x.setter

def x(self, value):

    self._x = value % 100

此外,您必须在init方法中声明和初始化 _x以获得更安全的代码


查看完整回答
反对 回复 2021-08-11
  • 1 回答
  • 0 关注
  • 138 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号