当前位置:首页 > 物联网 > Freak嵌入式

摘要:

本文主要对@property 装饰器的基本定义、使用场景和使用方法进行了介绍,同时介绍了setter装饰器和deleter装饰器的应用场景和语法。

文档和代码获取:


本文档主要介绍如何使用 Python 进行面向对象编程,需要读者对 Python 语法和单片机开发具有基本了解。相比其他讲解 Python 面向对象编程的博客或书籍而言,本文档更加详细、侧重于嵌入式上位机应用,以上位机和下位机的常见串口数据收发、数据处理、动态图绘制等为应用实例,同时使用 Sourcetrail代码软件对代码进行可视化阅读便于读者理解。


正文

上一篇文章链接:

全网最适合入门的面向对象编程教程:06 类和对象的Python实现-自定义类的数据封装

上面程序中,使用@property修饰了devstate()方法,这样就使得该方法变成了devstate属性的getter方法。

这里用如下语句直接通过方法名来访问方法:

s = SerialClass()print(s.devstate)

程序运行如下:

property装饰器主要应用在以下场景:

  • 保护类的封装特性

  • 让开发者可以使用“对象.属性”的方式操作操作类属性

@property 的语法格式如下:

@propertydef 方法名(self) 代码块

类似的要想实现修改devstate属性的值,还需要为属性添加setter方法,就需要用到setter装饰器

它的语法格式如下:

@方法名.setterdef 方法名(self, value): 代码块

除此之外,还可以使用 deleter 装饰器来删除指定属性,其语法格式为:

@方法名.deleterdef 方法名(self): 代码块
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
关闭