Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.5代码-未正确定义类_Python_Oop_Python 3.x - Fatal编程技术网

Python 3.5代码-未正确定义类

Python 3.5代码-未正确定义类,python,oop,python-3.x,Python,Oop,Python 3.x,我有一个简单的代码问题,不知道我做错了什么。导入部分还可以,当我得到一条错误消息时,我想我在类中犯了一个错误 status_listener = SessionStatusListener() TypeError: interface takes exactly one argument 因此,代码是: import clr clr.AddReference ("fxcore2") from fxcore2 import O2GTransport, IO2GSessionStatus cl

我有一个简单的代码问题,不知道我做错了什么。导入部分还可以,当我得到一条错误消息时,我想我在类中犯了一个错误

status_listener = SessionStatusListener()
TypeError: interface takes exactly one argument
因此,代码是:

import clr

clr.AddReference ("fxcore2")
from fxcore2 import O2GTransport, IO2GSessionStatus

class SessionStatusListener(IO2GSessionStatus):

    def __init__(self):
        IO2GSessionStatus.__init__(self)
        self.connected = False

    def onLoginFailed(self, error):
        print ("*** LOGIN FAILED: %s" % error)

    def onSessionStatusChanged(self, status):
        print ("NEW STATUS: %s" % status)
        if status == O2GSessionStatusCode.Connected:
            self.connected = True
主应用程序从这里开始

if __name__ == "__main__":

    session = O2GTransport.createSession()
    status_listener = SessionStatusListener()

任何建议都将不胜感激。

将论点传递给SessionStatusListener,就像它告诉你的那样。我可以想象,您需要将
\uuuu init\uuu
主体更改为

super().__init__(self) 
而不是

IO2GSessionStatus.__init__(self)

我相信是这样说的

status_listener = SessionStatusListener()
需要一个参数,如下所示:

status_listener = SessionStatusListener(1)

我不确定它需要什么类型的数据,但您需要传入一个参数。

代码中的任何内容都不会产生该错误消息;
IO2GSessionStatus.\uuuu init\uuuu
期望参数是什么?您可能需要将
session
传递给
SessionStatusListener
(并将其传递给
IO2GSessionStatus
)。为什么
super
会改变任何事情?此外,对
super
的调用将以隐式和显式参数的形式传递实例。2.7和3.5之间的对象继承是否存在问题?