python sys.exit 无法正常工作

标签 python python-2.7 redhat exit

<分区>

Python 2.7.5 (default, Feb 26 2014, 13:43:17)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> try:
...  sys.exit()
... except:
...  print "in except"
...
in except
>>> try:
...  sys.exit(0)
... except:
...  print "in except"
...
in except
>>> try:
...  sys.exit(1)
... except:
...  print "in except"
...
in except

为什么我无法在尝试中触发 sys.exit(),有什么建议...!!!

此处发布的代码包含所有版本详细信息。

我已经尝试了所有可能的方法来触发它,但我失败了。 它进入“except” block 。

提前致谢..

最佳答案

sys.exit() 引发异常,即 SystemExit。这就是您进入 except block 的原因。

看这个例子:

import sys

try:
    sys.exit()
except:
    print(sys.exc_info()[0])

这给你:

<type 'exceptions.SystemExit'>

虽然我无法想象有人有任何实际理由这样做,但您可以使用这个结构:

import sys

try:
    sys.exit() # this always raises SystemExit
except SystemExit:
    print("sys.exit() worked as expected")
except:
    print("Something went horribly wrong") # some other exception got raised

关于python sys.exit 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25905923/

相关文章:

python - 在python中读取原始二进制数据并将其转换为ascii

linux - `sudo yum update` throws 需要...删除...已过时

ssl - Linux (RHEL 7.1) 上 DotNet Core 中的可信根证书

python - 当功能未知时积分?

python - 如何访问另一个对象内部的对象的方法

c++ - 使用无 header 的 AES 加密

python - 在 Tkinter 中设置框架大小和位置

python - matplotlib 的 rcParams 中的 "rc"代表什么?

python - scipy:基本说明

mysql - 如何将Mysql日期时间格式 "2015-10-10 10:30:59.108000"转换为用户可读格式,如 "Oct. 10, 2015, 2:31 p.m"