2017-07-24 51 views
0

道歉,如果这是错误的方式来问这个问题。从函数或main中退出python脚本会更好吗?

所以我做了一些基本的谷歌搜索,看着PEP-8 recommendations,但我仍然无法找到一个很好的代码指南我的问题:

是更好地从函数内或退出我的python脚本return 1并让__main__机身手柄退出?

例子:

def exit_fun(): 
    if foo: 
    keep going 
    else: 
    exit(1) 

if __name__ == "__main__": 
    exit_fun() 
    next_fun() 

- 或 -

def exit_fun(): 
    if foo: 
    keep going 
    else: 
    return 1 

if __name__ == "__main__": 
    funfun = exit_fun() 
    if funfun == 1: 
    exit(1) 
    next_fun() 

弗里斯特方式看起来比较清爽,以我的眼睛,但我的眼睛没有比较风格指南。

+1

为什么脚本退出?是错误处理?我会发现,在脚本执行过程中突然退出脚本时会发生这种情况。相反,我会发现它更“正规”来提升特定的异常或使用错误代码。 – CoryKramer

+1

请注意'exit(1)'基本上就是'raise SystemExit(1)'。 –

+0

@CoryKramer:脚本在遇到错误时退出并不罕见。如果你的程序中不需要更多的错误处理,那么就不需要异常或错误代码(尽管'exit()'技术上引发了一个异常)。 –

回答

0

由于PM2Ring写道:

这是更好的风格的一切,回到主菜单,并让它处理退出。

这样回答了,也谢谢大家的sys.exit()指针VS exit()