fal*_*ure 3 python subprocess return-value
这可能是一个愚蠢的问题,但我有一个启动子进程的 Python 脚本(也是一个 Python 脚本),并且我需要该子进程返回三个整数。如何从启动子进程的 Python 脚本获取这些返回值?我是否必须将整数输出到标准输出,然后使用 check_output() 函数?
答案是肯定的...我想要+15 声望!!:-D
不,说真的......一旦你开始处理子进程,你真正必须与它们通信的唯一方式是通过文件(这就是stdout,stderr等等)
因此,您要做的就是获取输出并检查发生了什么(也许是生成的进程' exit_code,如果一切顺利的话,该进程将为零)请记住stdout(这就是您将得到的内容)这check_output)是一个字符串。因此,为了获得这三个项目,您必须以某种方式拆分该字符串......
例如:
import subprocess
output = subprocess.check_output(["echo", "1", "2", "3"])
print "Output: %s" % output
int1, int2, int3 = output.split(' ')
print "%s, %s, %s" % (int1, int2, int3)
Run Code Online (Sandbox Code Playgroud)