class SerialPort:
message = ' '
def _ init _(self,port,buand):
super(SerialPort,self). _ init _()
self. port = serial. Serial(port,buand)
self. port close()
super 有两个典型用例。 在具有单继承的类层级结构中,super 可用来引用父类而不必显式地指定它们的名称,从而令代码更易维护。 这种用法与其他编程语言中 super 的用法非常相似。
第二个用例是在动态执行环境中支持协作多重继承。 此用例为 Python 所独有,在静态编译语言或仅支持单继承的语言中是不存在的。 这使得实现“菱形图”成为可能,在这时会有多个基类实现相同的方法。 好的设计强制要求这种方法在每个情况下具有相同的调用签名(因为调用顺序是在运行时确定的,也因为该顺序要适应类层级结构的更改,还因为该顺序可能包含在运行时之前未知的兄弟类)。
我也没太理解,就当作查找父类,super(SerialPort,self). _init _()
就是调用父类实例化的方法吧
python3之后,如果不写继承,会隐式继承一个叫做“新样式类”的类
SerialPort.__mro__
,
你打印一下这个就知道继承关系了,如果没有显示的继承,那父类就是 <class 'object'>