IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python-内置函数-property -> 正文阅读

[Python知识库]Python-内置函数-property

使用场景一

class Test:
    def __init__(self):
        self._x = None

    def getx(self):
        print(f'{__class__}-{sys._getframe().f_code.co_name}开始执行')
        return self._x

    def setx(self, value):
        print(f'{__class__}-{sys._getframe().f_code.co_name}开始执行')
        self._x = value
        print(f'{__class__}-{sys._getframe().f_code.co_name}结束执行')

    def delx(self):
        print(f'{__class__}-{sys._getframe().f_code.co_name}开始执行')
        del self._x

    x = property(getx,setx,delx,"x property")

if __name__ == '__main__':
    t1 = Test()
    print(t1.x)  # .号会直接触发getx方法
    t1.x = 11    # .号=value 触发setx方法
    print(t1.x)  
    del t1.x     # del 触发delx方法
    print(t1.x)
"""
<class '__main__.Test'>-getx开始执行
None
<class '__main__.Test'>-setx开始执行
<class '__main__.Test'>-setx结束执行
<class '__main__.Test'>-getx开始执行
11
<class '__main__.Test'>-delx开始执行
<class '__main__.Test'>-getx开始执行
AttributeError: 'Test' object has no attribute '_x'
"""

使用场景二

class Test2:
    def __init__(self):
        self._x = None

    @property
    def x(self):
        return self._x

    @x.setter
    def setx(self, value):
        self._x = value

    @x.deleter
    def delx(self):
        del self._x

if __name__ == '__main__':
    t2 = Test2()
    print(t2.x)
    t2.setx = 12
    print(t2.x)
    del t2.delx
    print(t2.x)

"""
None
12
AttributeError: 'Test2' object has no attribute '_x'
"""

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章           查看所有文章
加:2021-08-08 11:17:17  更:2021-08-08 11:20:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 13:21:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码