Python noob问题对谷歌来说并不容易。来自C ++我仍然会想到可以在Python中完成的工作。
我想在Python中引发一个异常,并在异常中添加一个数字和字符串值。例外必须是标准Python异常,而不是自定义异常。我打算使用RuntimeError。
那么,我可以向RuntimeError添加数字和字符串值吗?
(编辑:为什么我不使用自定义异常?我试过了!见Python: Referring to an Exception Class Created with PyErr_NewException in an Extension Module)
答案 0 :(得分:1)
RuntimeError的初始化程序采用任意一组参数。像这样:
if temp < 0:
raise RuntimeError(temp, "Wicked Cold")
答案 1 :(得分:1)
您可以,它将存储在args
属性
>>> try:
... raise RuntimeError('test', 5)
... except Exception as e:
... print e.args
...
('test', 5)
我会考虑你对创建自己的异常类型的限制;适当的异常类型非常重要。