如果在加载文件并解析文件时检测到错误(即使是使用-i从交互模式调用),我希望我的程序自动退出。我尝试过exit()
和sys.exit()
的各种变体,但似乎没有任何效果。我没有退出交互式会话,而是获得了堆栈跟踪。例如,如果我有以下文件test.py
:
import sys
sys.exit(0)
当我运行python3 -i test.py
时,我得到以下结果:
Traceback (most recent call last):
File "test.py", line 2, in <module>
sys.exit()
SystemExit
>>>
并且会话继续,直到我退出自己(使用那些确切的行随后工作,而不是当他们从脚本调用时)。我错过了什么?