[英]how to handle exceptions inside a class method?
我正在嘗試處理 class 方法中的異常,其想法是,如果遇到異常,則該方法必須做一些事情並傳遞給另一個值。
這是我到目前為止得到的:
class test_class():
def just_a_function(self, value):
if value is None:
print('No value')
raise TypeError('No value')
else:
print(value)
def applying_function(self, value):
# doing some stuff like print('something')
try:
self.just_a_function(value)
except TypeError('No value'):
# do some other stuff like print('other options')
pass
應用時:
# applying #
values=[1,None,3]
if __name__=="__main__":
just_a_class = test_class()
for value in values:
just_a_class.applying_function(value)
出現下一個錯誤:
TypeError:不允許捕獲不繼承自 BaseException 的類
有沒有辦法以一種形式轉換applying_function()
,如果None
然后忽略該值並繼續,以預期 output 可能如下所示的方式:
#1
#No value
#3
您在嘗試中傳遞了一個實例化錯誤,除了。 相反,您應該擁有:
try:
self.just_a_function(value)
except TypeError as e:
pass
except
需要一個類型而不是實例化的 object。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.