如何在击键时停止 PiCamera 预览?

How to stop PiCamera preview on keystroke?

我通过python写了一个代码来操作我的PiCamera的预览,我把时间设置为10秒,然后自动关闭。但是我不确定我如何能够通过击键来停止相机并 return 到上一个屏幕? 目前我只能查看 10 秒,除此之外,通常的 ctrl-c 和其他各种键都不起作用。

我如何才能将击键集成到以下代码中以停止脚本并return进入正常屏幕?

from picamera import PiCamera
from time import sleep

camera = PiCamera()

camera.start_preview()
sleep(10)
camera.stop_preview()

子进程模块可以在官网查看:

https://docs.python.org/2/library/subprocess.html#subprocess.Popen

在 SO:

上可以找到使用 subprocess.Popen 实现的可能方法

另一种可能性是使用多进程或多线程模块。例如,可以创建一个线程,您可以处理一个 ID :-)

所有的可能性都会让你学到更多python!

我更好的建议是轻松创建一个线程(https://docs.python.org/3/library/threading.html --> 这里是 python 3),获取 ID 并保留它 运行。

如果要终止摄像头运行ning,则终止线程:-)