Python:显式退出和简单地让执行到达文件末尾有什么区别?

Python:显式退出和简单地让执行到达文件末尾有什么区别?,第1张

概述对于一个不启动任何线程或分叉任何进程的简单 python脚本,简单地让执行到达脚本结尾并显式调用quit(),exit()或sys.exit()之间的区别是什么? 即什么是区别 def main(): # do some stuff print("Done doing stuff")if __name__ == '__main__': main() 和 import s 对于一个不启动任何线程或分叉任何进程的简单 python脚本,简单地让执行到达脚本结尾并显式调用quit(),exit()或sys.exit()之间的区别是什么?

即什么是区别

def main():    # do some stuff    print("Done doing stuff")if __name__ == '__main__':    main()

import sysdef main():    # do some stuff    print("Done doing stuff")    # explicit exit    sys.exit()if __name__ == '__main__':    main()

我问这个是因为我在脚本终止时遇到了一些奇怪的垃圾收集问题(从__del__引发的异常显然是由于事情得到清理的顺序)而没有显式的exit()调用,并且添加了一个显式的exit()似乎纠正了这些问题.或者至少在调用exit()之后没有打印出这些异常,也许它们只是被静音了.

解决方法 在你发布的情况下,没有区别.但是,您可能希望终止程序而不等待它完成.

一个平庸的例子:

try:    ...except KeyboardInterrupt:    x = input('Sure you want to exit? y/n')    if x == 'y':        quit()    else:        pass
总结

以上是内存溢出为你收集整理的Python:显式退出和简单地让执行到达文件末尾有什么区别?全部内容,希望文章能够帮你解决Python:显式退出和简单地让执行到达文件末尾有什么区别?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1196349.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存