繁体   English   中英

用Python中的用户输入结束循环

[英]End loop with user input in Python

我有一个更新功能:

def update(self, interval=60):
    while True:
        # Do stuff

        time.sleep(interval)

我想知道调用该函数后,可以通过用户输入中断循环,同时保持脚本运行的可能方法。

我发现的答案都是5年前以上的答案,主要取决于平台。是否有任何新的/可靠的方法来实现这一目标? 如果可能的话,我宁愿避免线程化。 使用3.7

您可以使用signal创建一个中断处理程序。 但是,这仍然依赖于系统线程进行监视。 我不认为这是昂贵的,因为线程已经产生。

从本质上讲,您仍然需要一种控制循环的全局标志。 当发生中断触发(用户输入等)时,中断将更改标志的值,并且循环终止以进行其他处理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM