Python执行shell命令时不使用';不要终止
我正在使用子进程检查视频设备的zbarcam输出 这是我的密码:Python执行shell命令时不使用';不要终止,python,Python,我正在使用子进程检查视频设备的zbarcam输出 这是我的密码: >>> import subprocess >>> subprocess.check_output(["zbarcam","/dev/video1"]) Zbarcam启动了一个窗口,我可以在上面检查视频,问题是即使它已经读取了代码,它也会继续运行,我必须在它向python shell输出任何内容之前手动关闭此窗口。子进程。check_output调用仅在进程退出时才提供输出。您想要的是在输出
>>> import subprocess
>>> subprocess.check_output(["zbarcam","/dev/video1"])
Zbarcam启动了一个窗口,我可以在上面检查视频,问题是即使它已经读取了代码,它也会继续运行,我必须在它向python shell输出任何内容之前手动关闭此窗口。子进程。check_output调用仅在进程退出时才提供输出。您想要的是在输出仍在运行时读取输出 为此,您可以使用以下方法:
import os
process =os.popen('/usr/bin/zbarcam','r')
while True:
print 'Got barcode:', process.readline()
这是完全正常的。只有在命令完成后才能获得输出 请看这里: 对于异步运行命令的解决方案