分享

Python语言学习实战-内置函数property()的使用(附源码)

 禁忌石 2023-09-20

实现功能

property()是Python内置函数,用于创建一个特殊的属性,该属性可以像普通属性一样访问,但其值是通过方法计算得出的。它通常用于控制对类的私有属性的访问,以实现更好的封装性和安全性。

property()函数的语法如下:

property(fget=None, fset=None, fdel=None, doc=None)

其中,参数fget、fset和fdel是可选的方法,用于获取、设置和删除属性的值。这些方法可以是类的成员方法或静态方法。参数doc是可选的字符串,用于描述属性的文档字符串。

实现代码

class Rectangle: def __init__(self, width, height): self._width = width self._height = height @property def area(self): return self._width * self._height r = Rectangle(3, 4)print(r.area) # 输出:12

实现效果

在上面的示例中,我们定义了一个名为Rectangle的类,它有两个私有属性_width和_height,分别表示矩形的宽度和高度。我们使用@property装饰器将area()方法转换为只读属性area,该属性返回矩形的面积,由私有属性计算得出。

现在,我们可以像访问普通属性一样访问area属性,而不必调用area()方法。例如,r.area将返回矩形的面积12。

Python语言学习实战-内置函数property()的使用(附源码)

本人读研期间发表5篇SCI数据挖掘相关论文,现在某研究院从事数据挖掘相关科研工作,对数据挖掘有一定认知和理解,会结合自身科研实践经历不定期分享关于python机器学习、深度学习、数据挖掘基础知识与案例。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多