国际访客建议访问 Primers 编程伙伴 国际版站点 > Python 教程 > property 以获得更好的体验。

# Python 的内置函数 property

请查看 Python 内建函数列表 了解更多相关 API。

说明:创建属性。

# 函数说明

class property(getter=None, setter=None, deleter=None, doc=None):
    '''
    创建属性

    :param getter: 获取属性的方法
    :param setter: 修改属性的方法
    :param deleter: 删除属性的方法
    :param doc: 属性的说明
    :return: 属性
    '''

!subtitle:说明

通过 gettersetterdeleter 创建属性。通常以 装饰器 的形式使用。

不创建 deleter 能够让属性不可被删除;不创建 setter 能够让属性不可被修改。

!subtitle:参数

  • getter - 获取属性的方法

  • setter - 修改属性的方法

  • deleter - 删除属性的方法

  • doc - 属性的说明,默认为 None

!subtitle:返回值

封装的属性。

# 示例

运行示例

class Cat:
    def __init__(self):
        self.__name = None

    # getter
    @property
    def name(self) -> str:
        print('getter')
        return self.__name

    # getter,不创建 `setter` 能够让属性不可被修改
    @name.setter
    def name(self, name):
        print('setter')
        self.__name = name

    # deleter,不创建 `deleter` 能够让属性不可被删除
    @name.deleter
    def name(self):
        print('deleter')
        del self.__name

cat = Cat()
cat.name            # 调用 getter
cat.name = 'Tom'    # 调用 setter
del cat.name        # 调用 deleter

# 推荐阅读

本文 更新于: 2025-11-27 09:37:59 创建于: 2025-11-27 09:37:59