Python中的计时器可以通过函数相互调用吗?

Python中的计时器可以通过函数相互调用吗?,python,multithreading,timer,Python,Multithreading,Timer,我有一个Python脚本,它以一段代码开始,这段代码应该能让一切正常进行。此代码调用一个函数,该函数打印一些文本并启动计时器(从线程模块)。计时器调用的函数也会打印文本,但该函数从不执行 from threading import Timer def func1(): print "func1 successful" t = Timer(1, func2) t.start def func2(): print "func2 successful" ####p

我有一个Python脚本,它以一段代码开始,这段代码应该能让一切正常进行。此代码调用一个函数,该函数打印一些文本并启动计时器(从线程模块)。计时器调用的函数也会打印文本,但该函数从不执行

from threading import Timer

def func1():
    print "func1 successful"
    t = Timer(1, func2)
    t.start

def func2():
    print "func2 successful"

####program start####
print "test start"

func1()

上面的简化版本在打印两行文本后退出。我试着在底部添加一个无限循环,让程序等待计时器,但它只是没能退出。为什么第二个函数不运行?

因为您没有调用start函数

从线程导入计时器

def func1():
    print "func1 successful"
    t = Timer(1, func2)
    t.start()
    #      ^^

def func2():
    print "func2 successful"

####program start####
print "test start"

func1()

现在应该可以工作了,因为您没有调用start函数

从线程导入计时器

def func1():
    print "func1 successful"
    t = Timer(1, func2)
    t.start()
    #      ^^

def func2():
    print "func2 successful"

####program start####
print "test start"

func1()
现在该工作了