10.1.1.1 错误处理
CompletedProcess的returncode属性是程序的退出码。调用者要啊负责解释这个返回值以检测错误。如果run()的check参数为True,则会检查退出码。如果指示发生了一个错误则会产生一个CalledProcessError异常。
import subprocess
try:
subprocess.run(['false'],check=True)
except subprocess.CalledProcessError as err:
print('ERROR:',err)
false命令退出时总有一个非0的状态码,run()会把它解释为一个错误。
运行结果:
说明:向run()传入check=True就等价于使用check_call()。