我需要每隔x秒一次打印一条消息,我需要听用户的输入。如果按“q”,它将杀死程序。
例如
some message
.
. # after specified interval
.
some message
q # program should end
我现在面临的当前问题是
raw_input
正在阻止,这阻止了我的功能重复该消息。如何获得输入读取和函数并行运行?编辑:事实证明
raw_input
没有被阻止。我误解了多线程的工作原理。如果有人偶然发现,我将其留在这里。 最佳答案
您可以使用线程将消息打印到其他线程中。
import threading
t = threading.Timer(30,func,args=[])
t.start()
哪里叫func的频率是30。
func是在其他线程中调用的函数。
而args是使用以下参数调用函数的参数数组
如果您只想调用一个不同的函数,则可以执行
t = threading. Thread(target=func, args=[])
t.start()
这将使func并行运行
关于python - 如何在不阻塞python中的计时器的情况下等待输入?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32369495/