亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 try 和 except 的用戶定義的異常錯誤

使用 try 和 except 的用戶定義的異常錯誤

皈依舞 2023-02-22 19:02:14
我正在嘗試在下面的二次根程序(使用類)中創建一個用戶定義的異常。如果輸入列表長度不是 3(3 個系數需要 3 個輸入),目的是拋出錯誤并返回。此外,如果出現輸入錯誤,我希望代碼停止執行。但是,此代碼不起作用,它不會引發異常并且代碼會繼續執行。如果您能指導我,將不勝感激。class quadRoots():     def __init__(self,coeff):    self.A = coeff[0]/coeff[0]    self.B = coeff[1]/coeff[0]    self.C = coeff[2]/coeff[0]    self.Z = 0    self.R_1 = 0    self.R_2 = 0    self.coeff = len(coeff)    try:        self.coeff == 3    except:        print("Input size is not valid")        def roots(self):    import cmath    self.Z = cmath.sqrt((self.B**2)/4 - (self.C))        self.R_1 = ((-(self.B)/2) + self.Z)    self.R_2 = ((-(self.B)/2) - self.Z)    return [self.R_1,self.R_2]def mult(self):    return quadRoots.roots(self)[0] * quadRoots.roots(self)[1]def sumRoots(self):    return [complex(-(self.B))]def prodRoots(self):    return [complex(self.C)]quadroots([1,-9,14,15]).roots()
查看完整描述

1 回答

?
桃花長相依

TA貢獻1860條經驗 獲得超8個贊

   try:

        self.coeff == 3

    except:

        print("Input size is not valid")

Try-Except 鏈不是這樣工作的。它在出現錯誤時起作用。但是在這里,沒有錯誤。我建議你使用assert self.coeff == 3, "Input size is not valid". 相反,如果 self.coeff 不等于 3,它會引發錯誤并退出程序。


這樣整個 try except 鏈可以用一行替換。assert self.coeff == 3, "Input size is not valid"


查看完整回答
反對 回復 2023-02-22
  • 1 回答
  • 0 關注
  • 113 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號