我想提出併除了與消息的自定義異常,但消息字符串打印爲字符的元組。 我的錯誤類:Python異常處理 - 異常引發的字符串消息,例如字符列表除外
class myError(Exception):
def __init__(self, arg):
self.args = arg
並嘗試加註,除部分:
try:
raise myError('some message.')
except myError, e:
print e.args
這時候適當提高,印刷:`
('s', 'o', 'm', 'e', ' ', 'm', 'e', 's', 's', 'a', 'g', 'e', '.', ' ')
當然,我想「一些消息。 」。到底是怎麼回事?
確定。我刪除__init __(),但保持try-except子句相同。它打印('一些消息')。兩個問題 - (1)爲什麼我仍然可以調用e.args,如果類中沒有任何東西是'args'的話。 (2)我檢查了e.args的類型,它表示元組,而不是字符串。刪除__init __() – xpipie
無法解決的問題您可以簡單地打印'str(e)'而不是'e.args' – Chaker