プロセスを呼び出し、そのstddとstoutの両方を文字列に出力して検査したいと思います。このコードは、予期しないエラーブロックをトリガーします。
try:
proc = subprocess.Popen('ls -ddd 1>&2', stdout=subprocess.PIPE, stderr=subprocess.PIPE,)
stdout,stderr = proc.communicate()
if len(stderr)>1:
actualResult =stderr
else:
actualResult =stdout
print actualResult
except:
print "Unexpected error"
私はそれをhttp://www.oreillynet.com/onlamp/blog/2007/08/pymotw_subprocess_1.htmlに基づいていますが、明らかに何かが欠けています。tryブロック内でこれを行うことは可能ですか?