下面是我的Python代码的一小部分:
except Exception1:
logger.error("Exception 1. Exit.")
sys.exit(-1)
except Exception 2, e:
logger.error("Exception 2: {e}".format(e=e.message))
有时我会收到一个错误:
INFO - 2019-01-28 16:44:49,399 - data_loader - ERROR - Exception 2: [Errno 28] No space left on device
问题是程序返回0代码,我看不到有错误。
我找到了两个解决方案。
1:
except Exception1:
logger.error("Exception 1. Exit.")
sys.exit(-1)
except Exception 2, e:
logger.error("Exception 2: {e}".format(e=e.message))
raise
2:
except Exception1:
logger.error("Exception 1. Exit.")
sys.exit(-1)
except Exception 2, e:
logger.error("Exception 2: {e}".format(e=e.message))
except [ExceptionCode]:
raise("No space left on device")
我的问题是-如何在Pyhton中捕获“设备上没有剩余空间”?有没有我可以使用的错误代码?
发布于 2019-02-14 22:47:28
import errno
try:
...
except Exception as e:
if e.errno == errno.ENOSPC:
# no space left
# handle it here
发布于 2019-02-14 22:49:02
如果它是一个有效的异常,那么您将获得如下所示的异常名称。一旦有了名称,您就可以优雅地处理该异常
try:
#do something
except Exception as exception:
print(exception.__class__.__name__)
https://stackoverflow.com/questions/54692954
复制相似问题