
下面是我正在调用的一个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 __()方法.
总结以上是内存溢出为你收集整理的python – 错误 – __init __()需要2个参数(给定1个)全部内容,希望文章能够帮你解决python – 错误 – __init __()需要2个参数(给定1个)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)