带不带 set -e 的差别
运行下面这段程序,填写它打印出来的结果。
def run(steps, stop_on_error=False):
"""steps 是一串退出码;返回 (跑了几条, 整个脚本的退出码)"""
ran = 0
last = 0
for rc in steps:
ran = ran + 1
last = rc
if stop_on_error and rc != 0:
return ran, rc
return ran, last
def ok(rc):
return rc == 0
steps = [0, 1, 0]
a_ran, a_code = run(steps, False)
b_ran, b_code = run(steps, True)
print(str(a_ran) + "-" + str(a_code) + "/"
+ str(b_ran) + "-" + str(b_code))
全部评论