使用python中property几种情况下的代码
时间: 2023-03-28 17:01:38 浏览: 103
property 是 Python 中的一个内置函数,用于创建属性。它可以让我们在访问类的属性时,像访问普通属性一样,而在属性被访问、修改或删除时,可以执行一些特定的操作。下面是几种使用 property 的情况:
1. 只读属性
```python
class MyClass:
def __init__(self, value):
self._value = value
@property
def value(self):
return self._value
```
在这个例子中,我们定义了一个只读属性 value,它的值是在初始化时传入的。通过 @property 装饰器,我们可以将 value 方法转换为只读属性,这样在访问 value 时,会自动调用 value 方法,返回属性的值。
2. 可读写属性
```python
class MyClass:
def __init__(self, value):
self._value = value
@property
def value(self):
return self._value
@value.setter
def value(self, value):
self._value = value
```
在这个例子中,我们定义了一个可读写属性 value,它的值是在初始化时传入的。通过 @property 和 @value.setter 装饰器,我们可以将 value 方法转换为可读写属性,这样在访问和修改 value 时,会自动调用 value 方法。
3. 可删除属性
```python
class MyClass:
def __init__(self, value):
self._value = value
@property
def value(self):
return self._value
@value.deleter
def value(self):
del self._value
```
在这个例子中,我们定义了一个可删除属性 value,它的值是在初始化时传入的。通过 @property 和 @value.deleter 装饰器,我们可以将 value 方法转换为可删除属性,这样在删除 value 时,会自动调用 value 方法。
阅读全文