管理它外面的循环

时间:2014-05-23 18:42:25

标签: loops python-2.7 raspberry-pi

我想运行一个拍照的循环。我想在客户想要的时候运行循环,并在视频需要停止录制时停止它(所有图像将被放在一起成为视频)。如果我运行循环,我不能做任何事情,直到它停止,所以我不知道不知道。我不想要设置一个特定的时间,也不想询问客户是否要拍摄下一张照片,因为它会延迟拍摄图像,输入60次是的,录制1秒的视频也很烦人。如果我可以进行前端调用并在后端运行循环,那将是惊人的。有任何想法吗?感谢

1 个答案:

答案 0 :(得分:0)

我并不要求完美,但可以根据您的需要进行修改:

import thread

try:
    from msvcrt import getch
except ImportError:
    def getch():
        import sys, tty, termios
        fd = sys.stdin.fileno()
        old_settings = termios.tcgetattr(fd)
        try:
            tty.setraw(sys.stdin.fileno())
            ch = sys.stdin.read(1)
        except:
            pass
        finally:
            termios.tcsetattr(fd, termios.TCSADRAIN, old_settings)
        return ch

char = None
def keypress():
    global char
    char = getch()

thread.start_new_thread(keypress, ())

i=1
while True:
    if char is not None:
        print "Key pressed is {} -- exiting loop".format(char)
        break
    print "Loop has run {} times".format(i)
    i+=1