我希望能够通过脚本的返回值来定义变量。这就是我目前所拥有的:
sum_total_earnings_usd = subprocess.call([SCRIPT, "-d", date])
我已经检查了SCRIPT的返回值,但是,当我尝试设置此变量时,它总是返回0(http://docs.python.org/library/subprocess.html#subprocess.call)。我如何运行此脚本并捕获返回值以存储为变量?
答案 0 :(得分:23)
答案 1 :(得分:6)
如果您的脚本正在返回该值,那么您可能希望使用subprocess.check_output()
:
subprocess.check_output([SCRIPT, "-d", date], shell=True).
subprocess.check_call()
从脚本中获取最终返回值,0通常表示"脚本成功完成"。
答案 2 :(得分:3)
subprocess.call
已经返回进程返回值。如果您总是收到0
,那么您需要查看SCRIPT
以确保它返回您期望的值。
要仔细检查,您还可以在shell中执行SCRIPT
并使用$?
获取返回代码。