我在python中启动一个循环,在我启动循环后,我想在循环之后继续执行代码,而循环保持循环(在'background'中)。
x=True
while x:
#do some output
sleep(1)
#ask for input or something
if input()=='something':
x=False
因此,在该示例中,#do some output
将在要求输入时继续发生。
这在python中可行吗?有没有可以实现这一目标的解决方案?
答案 0 :(得分:3)
根据我的理解,你想要的是创建一个在后台执行某些任务的线程。
http://docs.python.org/library/threading.html
线程是一个中等复杂的问题,因此在这里给你一个食谱不会太多。我建议你看看文档,了解所涉及的内容。
如果您遇到与实施相关的问题,请更新您的问题或创建一个新问题。
编辑: 我同意蒂姆霍夫曼的评论,正确的解决方案取决于你想要实现的目标。根据我的理解,线程应该对你有用,但如果你给我们更多的细节,可能更容易给出一个更准确的答案。
答案 1 :(得分:0)
按照OP的意愿,我发布了答案。 :)有多个库可以实现您的目标。最知名的包括:
它们之间存在微妙的差异,但我想你现在不应该担心它。我鼓励你阅读更多关于多处理和线程的信息。 “绿色”线程也是一个有趣的选择。