再加一个getter
时间: 2024-02-25 12:56:04 浏览: 17
当我们想要获取一个类的属性值时,可以使用 @property 装饰器将方法转化为只读属性。但是,当我们想要获取一个类的属性时,我们也可以使用 @property 装饰器将方法转化为 getter 方法,从而实现对属性的读取操作。下面是一个例子:
```python
class Person:
def __init__(self, name, age):
self.name = name
self._age = age
@property
def age(self):
return self._age
@age.setter
def age(self, value):
if not isinstance(value, int):
raise ValueError("Age must be an integer.")
elif value < 0 or value > 120:
raise ValueError("Age must be in range 0-120.")
else:
self._age = value
@age.getter
def age(self):
return self._age
```
在上述示例中,我们使用了 @age.getter 装饰器来定义 age 的 getter 方法。这个 getter 方法返回的是 age 的值,因此我们可以通过 person.age 来获取 age 的值。同时,我们还可以在 getter 方法中添加一些逻辑,以保证获取的属性值是正确的。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)