如何在python中抛出错误并使用自定义消息退出



我看到有人建议在Python中使用sys.exit()。我的问题是,是否有其他方法可以退出当前脚本的执行,我的意思是终止,并出现错误。

像这样:

sys.exit("You can not have three process at the same time.")

目前我的解决方案是:

print("You can not have three process at the same time.")
sys.exit()

用字符串调用sys.exit可以工作。文档明确提到了这种用法:

特别是sys。Exit ("some error message")是在出现错误时快速退出程序的一种方法。

有3种方法,第一种方法是使用sys.exit

sys.exit('My error message')

第二种方法是使用print, print几乎可以写任何东西,包括错误消息

print >>sys.stderr, "fatal error"     # Python 2.x
print("fatal error", file=sys.stderr) # Python 3.x

第三种方法是引发一个我不喜欢的异常,因为它可能是try-catch

  raise SystemExit('error in code want to exit')

可以像这样忽略

try:
  raise SystemExit('error in code want to exit')
except:
  print("program is still open")

你也可以像这样抛出错误:

raise SystemExit('Error: 3 processes cannot run simultaneously.')

这种方法的一个优点是您不必导入Python sys模块。这在Linux上使用Python 3和Python 2。

必须先使用import sys

则使用sys.exit("your custom error message")

最新更新