如何在没有exit()的情况下从`__main__`中断

时间:2018-01-18 09:42:50

标签: python

我正在使用Emacs进行python编码。

每当我打电话给sys.exit时,我发现让Emacs劣质外壳退出是很麻烦的。如何在不引入Emacs劣质shell进程的情况下从__main__块中断代码,而不引入另一个缩进块?

if __name__ == "__main__":
    # doing something
    if args.init:
        init_env(cfg_dict, args)
        exit(0)   # <--- this kills the Emacs sub-shell
    # otherwise doing something
    # ...

附:我暂时睡了这个问题的标题,但我想不出更好的头衔。 : - (

1 个答案:

答案 0 :(得分:2)

为什么不将主代码包装在函数中并使用return

def main():
    # doing something
    if args.init:
        init_env(cfg_dict, args)
        return

if __name__ == "__main__":
    main()