我对Python还不熟悉。我在一个正在开发的OpenFlow控制器中遇到了Python代码。
class SimpleSwitch(app_manager.RyuApp):
OFP_VERSIONS = [ofproto_v1_0.OFP_VERSION]
def __init__(self, *args, **kwargs):
super(SimpleSwitch, self).__init__(*args, **kwargs)
self.mac_to_port = {}
我的问题如下。
__init__
是类的构造函数吗?
是{c*2}}与C++的^ {< CD3>}指针相同吗?
super(SimpleSwitch, self).__init__(*args, **kwargs)
是否意味着调用父/超类的构造函数?
能否将新成员作为mac_to_port
添加到self
中?或者已经添加了并且刚刚在这里初始化?
__init__
是初始化器;__new__
是构造函数。参见例如this question。self
,是实例本身。SimpleSwitch
添加了一个新属性,一个空字典。很难用语言解释。观看雷蒙德·赫廷格在皮孔的“超级超人”演讲。他很好地解释了它是如何工作的,以及为什么python的super不应该被称为“super”。
相关问题 更多 >
编程相关推荐