python – 错误 – __init __()需要2个参数(给定1个)
发布时间:2020-12-20 12:22:04 所属栏目:Python 来源:网络整理
导读:我试图从另一个.py初始化类(extraropt),但它给了我一个错误,我搜索但我还没有找到解决方案. 下面是我正在调用的一个py的代码: main.py: class GameWindow(ui.ScriptWindow): def __init__(self,stream): import extraop exec 'extraop.extraropt().Show(st
我试图从另一个.py初始化类(extraropt),但它给了我一个错误,我搜索但我还没有找到解决方案.
下面是我正在调用的一个py的代码: main.py: class GameWindow(ui.ScriptWindow): def __init__(self,stream): import extraop exec 'extraop.extraropt().Show(stream)' 这里是我试图调用的一个py的代码(仅限init和del): extraop.py class extraropt(ui.Window): def __init__(self,stream): ui.Window.__init__(self) self.BuildWindow() self.stream=stream def __del__(self): ui.Window.__del__(self) 它给出了这个错误: Error - __init__() takes exactly 2 arguments (1 given) 解决方法
在线
exec 'extraop.extraropt().Show(stream)' 您通过创建一个新的extraopt实例隐式调用extraropt .__ init __().在您的代码中,您显示extraropt .__ init __()接受第二个(流)参数,因此您必须将其传入. extraop.extraropt(stream).Show() 顺便说一句,没有理由你应该做一个exec,而不是像我上面那样明确地调用它.您也没有理由定义__del __()方法,因为您只调用了父__del __()方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |