u111 Asked:2024-08-17 01:12:17 +0800 CST2024-08-17 01:12:17 +0800 CST 2024-08-17 01:12:17 +0800 CST 在类中获取/设置 772 有一个班MyClass()。 对于 getter 有一个装饰器@property,但对于 setter 有一个@prop_name.setter. 为什么会这样呢? python 1 个回答 Voted Best Answer S. Nick 2024-08-17T21:18:27+08:002024-08-17T21:18:27+08:00 getter:允许您访问给定类中的属性的方法。 setter:允许您设置或更改类中属性值的方法。 getter您还可以定义setter属性的方法。 通常,方法getter返回目标属性的值,并且方法setter采用新值并将其分配给基本属性。 class MyClass: def __init__(self, text): self._text = text def get_text(self): return self._text def set_text(self, value): self._text = value.upper() print() myClass = MyClass('Hello') print(f'1 {myClass.get_text()}') myClass.set_text('Hello u111') print(f'2 {myClass.get_text()}') print() 在Python中,将行为绑定到属性的方法是将属性本身转变为属性。 属性结合了获取、设置和记录基础数据的方法。因此,属性是具有附加行为的特殊属性。 您可以像常规属性一样使用属性。 当您访问属性时,会自动调用附加到该属性的 getter。 同样,当您更改属性时,会调用其 setter 方法。此行为提供了一种向属性添加功能而无需对代码进行重大更改的方法。 class MyClass: def __init__(self, text): self.text = text @property def text(self): return self._text @text.setter def text(self, value): self._text = value.upper() myClass = MyClass('Hello') print(f'3 {myClass.text}') myClass.text = 'Hello u111' print(f'4 {myClass.text}')
getter
:允许您访问给定类中的属性的方法。setter
:允许您设置或更改类中属性值的方法。getter
您还可以定义setter
属性的方法。通常,方法
getter
返回目标属性的值,并且方法setter
采用新值并将其分配给基本属性。在Python中,将行为绑定到属性的方法是将属性本身转变为属性。
属性结合了获取、设置和记录基础数据的方法。因此,属性是具有附加行为的特殊属性。
您可以像常规属性一样使用属性。
当您访问属性时,会自动调用附加到该属性的 getter。
同样,当您更改属性时,会调用其 setter 方法。此行为提供了一种向属性添加功能而无需对代码进行重大更改的方法。