这可能是一个愚蠢的问题,但我有一个启动子进程的 Python 脚本(也是一个 Python 脚本),并且我需要该子进程返回三个整数。如何从启动子进程的 Python 脚本获取这些返回值?我是否必须将整数输出到标准输出,然后使用 check_output() 函数?
答案是Yes...我想要+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)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)