我在 Python 3.2.3 中有以下脚本:
try:
file = open('file.txt', 'r')
except IOError:
print('There was an error opening the file!')
sys.exit()
#more code that is relevant only if the file exists
如果文件不存在(或者打开它时出错),我如何优雅地退出?
我可以使用exit()
,但这会打开一个对话框面板,询问我是否要终止该应用程序。
我可以使用sys.exit()
,但这会引发 SystemExit 异常,该异常在输出中看起来不太好。我明白了
Traceback (most recent call last):
File "file", line 19, in <module>
sys.exit() SystemExit
我可以使用os.exit()
,但这会在 C 级别杀死 Python,而我可能不会执行任何清理。
我可以使用布尔变量并将所有后续代码包装在 if... 中,但这很难看,而且这不是我正在执行的唯一检查。所以我想要六个嵌套的 if ......
我只想打印 'There was an error...' 并退出。我在 IDLE 工作。