我想知道脚本退出的控制应该放在进程的哪个位置?
如果一个函数用来判断一个脚本是否应该继续执行,应该根据结果控制在调用者还是被调用者?
有没有可能出现的情况?
(我确信这个问题具有更广泛的含义,因此请随时将答案扩展到更高级别的编程实践。这实际上会很棒)
我将在下面列出一些示例,以作为条件脚本退出的选项以及如何委托或不委托控制。
想象一下should_continue
,正在检查提供的 arg 是否有效,并且脚本继续需要其有效性。否则退出。
'''
ex 1: return state to parent process to determine if script continues
'''
def should_continue(bool):
if bool:
return True
else:
return False
def init():
if should_continue(True):
print 'pass'
else:
print 'fail'
'''
ex 2: return state only if script should continue
'''
def should_continue(bool):
if bool:
return True
else:
print 'fail'
sys.exit() # we terminate from here
def init():
if should_continue(True):
print 'pass'
'''
ex 3: Don't return state. Script will continue if should_continue doesn't cause termination of script
'''
def should_continue(bool):
if not bool:
print 'fail'
sys.exit()
def init():
should_continue(True)
print 'pass'