在按下的键上停止python循环

时间:2012-10-12 23:06:59

标签: python loops

使用python 2.7

import time, os

def foo():
    try:
        a=0
        while 1:
            os.system("bash command")
            a += 1
            time.sleep(1/30)
        print a
    except KeyboardInterrupt:
        print "Interrupted!"

foo()

我是从Ubuntu 12.04 64位下的终端运行的,但是我无法阻止这个无限循环,为什么它不起作用?

我希望有一个无限循环,只有当用户按某个特定键或任何键时才会中断它。

2 个答案:

答案 0 :(得分:3)

另一种方法是Async。用户输入。在您的情况下,db或简单文件就足够了。

看看这个question

答案 1 :(得分:1)

问题解决了。

由于time.sleep()的值很低,循环的执行几乎不可能停止,显然睡眠的值更高(),应用程序对用户输入的响应更快,一切正常。