首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是什么导致了这段Python代码中的“非绑定方法__init__()必须以实例作为第一个参数来调用”?

是什么导致了这段Python代码中的“非绑定方法__init__()必须以实例作为第一个参数来调用”?
EN

Stack Overflow用户
提问于 2009-10-24 02:24:05
回答 4查看 29.4K关注 0票数 10

我有这样一门课:

代码语言:javascript
运行
复制
from threading import Thread 
import time

class Timer(Thread): 
    def __init__(self, interval, function, *args, **kwargs): 
        Thread.__init__() 
        self.interval = interval 
        self.function = function 
        self.args = args 
        self.kwargs = kwargs 
        self.start()

    def run(self): 
        time.sleep(self.interval) 
        return self.function(*self.args, **self.kwargs) 

我用下面的脚本调用它:

代码语言:javascript
运行
复制
    import timer 
    def hello():
        print \"hello, world
    t = timer.Timer(1.0, hello)
    t.run()

得到这个错误,但我找不出原因:unbound method __init__() must be called with instance as first argument

EN

Stack Overflow用户

回答已采纳

发布于 2009-10-24 02:29:40

您正在执行以下操作:

代码语言:javascript
运行
复制
Thread.__init__() 

使用:

代码语言:javascript
运行
复制
Thread.__init__(self) 

或者,更确切地说,使用super()

票数 17
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1615148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档