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

摘要:

在 Python 中,文档字符串(Docstring)是一种用于为模块、类、方法或函数编写文档的字符串,通常放置在定义的开头,紧跟在声明之后。文档字符串使用三重引号("""或''')包围,可以跨越多行。

文档和代码获取:

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

正文

在Python中,我们可以为方法、类和模块添加文档字符串,这些文档字符串可以通过一个特殊属性__doc__获取。文档字符串(docstring)是一种用于描述类、函数、模块或方法的字符串,通常位于定义的顶部,并用于提供有关其功能和用法的信息。文档字符串通常被包含在三引号(''' 或 """)中,并位于类、函数、模块或方法定义的顶部。

例如,在下列示例中,我们为MasterClass主机类及其StartMaster开启主机方法添加必要注释,并通过以下语句访问:

# 访问MasterClass类的__doc__属性 print(MasterClass.__doc__) # 访问MasterClass类中StartMaster方法的__doc__属性 print(MasterClass.StartMaster.__doc__)

示例代码如下:

class MasterClass(SerialClass,PlotClass): ''' MasterClass:该类表示主机类,主要用于接收传感器数据、收发指令等  具有如下属性: state       —— 表示主机工作状态 port        —— 表示主机端口号 wintitle    —— 表示窗口标题 ... ...  具有如下方法: StartMaster     —— 开启主机 StopMaster      —— 停止主机 RecvSensorValue —— 接收传感器数据值 ... ... ''' ... # 类的初始化 def __init__(self,state:int = IDLE_STATE,port:str = "COM17",wintitle:str="Basic plotting examples",plottitle:str="Updating plot",width:int=1000,height:int=600): pass # 开启主机 def StartMaster(self): ''' StartMaster方法——开启主机 调用SerialClass.OpenSerial()方法 :return: 无返回值 ''' pass

如下为运行结果:

同时,我们也可以给命名元组添加文档字符串。使用一个类继承对应的命名元组,并在类中添加文档注释,示例代码如下:

from collections import namedtuple _Sensor = namedtuple("Sensor","ID CURRENTVALUE MAXVALUE MINVALUE") class Sensor(_Sensor): ''' 这是一个继承自表示传感器数据的命名元组的类 具有四个属性: (1) ID              : 表示传感器ID号 (2) CURRENTVALUE    : 传感器采集到的当前数据值 (3) MAXVALUE        : 传感器采集到的最大数据值 (4) MINVALUE        : 传感器采集到的最小数据值 '''sensor_tuple=Sensor(ID="16",CURRENTVALUE=32,MAXVALUE=62,MINVALUE=2)print(sensor_tuple.__doc__)

运行结果如下:


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