我最近了解到如何在Python中創建自定義異常並將它們實現爲類。我試圖添加一個額外的參數到我的例外中以獲得更多清晰度,並且似乎無法正確完成格式設置。將參數傳遞到自定義異常中
這裏就是我試圖:
class NonIntError(Exception):
pass
class intlist(List):
def __init__(self, lst = []):
for item in lst:
#throws error if list contains something other that int
if type(item) != int:
raise NonIntError(item, 'not an int')
else:
self.append(item)
預期結果
il = intlist([1,2,3,'apple'])
>>> NonIntError: apple not an int
結果與錯誤
il = intlist([1,2,3,'apple'])
>>> NonIntError: ('apple', 'not an int')
重申發佈我的問題,我想知道如何使我的例外看起來像預期的結果。