如何使用 try 和 except 块在调用另一个函数后终止脚本?
How to use a try and except block that kills the script after calling another function?
我正在使用 tkinter 创建一个 GUI,当我单击提交时我 运行 一个函数,在函数中我需要检查用户输入的是数字而不是字符串。为此,我使用以下代码:
try:
Thickness = float(Thickness)/1000
except Exception:
print('Please only enter an integer into the Thickness field')
Error_Integer_Thickness()
其中 'Thickness' 是我从 GUI 输入中检索到的变量的名称,'Error_Integer_Thickness' 是我创建的显示自定义错误的函数 window.
我希望代码在发现错误后停止,但我不想使用 'typeError',因为这样用户就不会看到我的错误 window。 运行 此代码将生成我的错误 window 但从输出中我看到代码仍尝试继续并失败,因为稍后在代码中尝试将字符串转换为浮点数。
我曾尝试在代码块末尾使用 'sys.exit(1)',但这会阻止显示我的错误 window。另外使用 'sys.exit' 并不理想,因为我希望 GUI 在关闭错误 window 后保持打开状态。
我对 try 和 excpet 块没有太多经验,因此不胜感激。
这个 try, except 是函数内部的块吗?如果是这样,您可以在 Error_Integer_Thickness() 调用后从函数中 return。
我正在使用 tkinter 创建一个 GUI,当我单击提交时我 运行 一个函数,在函数中我需要检查用户输入的是数字而不是字符串。为此,我使用以下代码:
try:
Thickness = float(Thickness)/1000
except Exception:
print('Please only enter an integer into the Thickness field')
Error_Integer_Thickness()
其中 'Thickness' 是我从 GUI 输入中检索到的变量的名称,'Error_Integer_Thickness' 是我创建的显示自定义错误的函数 window.
我希望代码在发现错误后停止,但我不想使用 'typeError',因为这样用户就不会看到我的错误 window。 运行 此代码将生成我的错误 window 但从输出中我看到代码仍尝试继续并失败,因为稍后在代码中尝试将字符串转换为浮点数。
我曾尝试在代码块末尾使用 'sys.exit(1)',但这会阻止显示我的错误 window。另外使用 'sys.exit' 并不理想,因为我希望 GUI 在关闭错误 window 后保持打开状态。
我对 try 和 excpet 块没有太多经验,因此不胜感激。
这个 try, except 是函数内部的块吗?如果是这样,您可以在 Error_Integer_Thickness() 调用后从函数中 return。