温馨提示×

python property函数的用法是什么

小亿
108
2023-10-16 11:14:33
栏目: 编程语言

在Python中,property函数是一个内置函数,用于创建可读写的属性。

property函数可以用作装饰器,将一个方法转换为相应的可读写属性。它接受四个参数:fgetfsetfdeldoc

  • fget:获取属性值的函数。它将在访问属性时被调用。

  • fset:设置属性值的函数。它将在给属性赋值时被调用。

  • fdel:删除属性值的函数。它将在使用del关键字删除属性时被调用。

  • doc:属性的文档字符串。

以下是property函数的基本用法示例:

class MyClass:
def __init__(self):
self._x = 0
# 定义可读写的属性x
@property
def x(self):
return self._x
@x.setter
def x(self, value):
self._x = value
@x.deleter
def x(self):
del self._x
# 创建实例
obj = MyClass()
# 访问属性
print(obj.x)  # 输出: 0
# 设置属性
obj.x = 10
# 再次访问属性
print(obj.x)  # 输出: 10
# 删除属性
del obj.x
# 再次访问属性
print(obj.x)  # 抛出 AttributeError: 'MyClass' object has no attribute '_x'

在上面的示例中,通过@property装饰器将x方法转换为可读写的属性。@x.setter装饰器定义了设置属性值的方法,@x.deleter装饰器定义了删除属性值的方法。

0