如果在python中使用子流程,如何显示错误

如果在python中使用子流程,如何显示错误,python,subprocess,Python,Subprocess,我使用这样的子流程 args = ['commandname', 'some args'] subprocess.check_output(args) 有时我会犯这样的错误 命令返回非零退出状态1 如果获取非零退出状态,那么系统是否会以如下消息引发异常 output = subprocess.check_output(args) if non zero exit : raise Exception(errormessage) 您可以使用名为returncode 所以它应该像这样工作(不

我使用这样的子流程

args = ['commandname', 'some args']
subprocess.check_output(args)
有时我会犯这样的错误

命令返回非零退出状态1

如果获取非零退出状态,那么系统是否会以如下消息引发异常

output = subprocess.check_output(args)
if non zero exit :
   raise Exception(errormessage)

您可以使用名为
returncode

所以它应该像这样工作(不是经过测试的代码)——


subprocess.check_output
已引发该消息的异常。是否要用命令的输出引发一个错误?是的,我要显示确切的错误消息
Popen.returncode 
  The child return code, set by poll() and wait() (and indirectly by communicate()). 
  A None value indicates that the process hasn’t terminated yet.

  A negative value -N indicates that the child was terminated by signal N (Unix only).
import subprocess
args  = ['commandname', 'some args']
child = subprocess.Popen(args, stdout=subprocess.PIPE)
streamdata = child.communicate()[0]
returncode = child.returncode
if returncode != 0:
    raise Exception