0
我正在寫一個多項式類,並有我的運營商的GetItem麻煩 這是我爲我的GetItem代碼:爲什麼我的方法操作返回沒有
def __getitem__(self, idx):
for i in range(len(self.coeffs)):
if self.coeffs[i][1] == idx:
return (self.coeffs[i][0])
break
這裏是我的測試代碼:
for i in range(P1.degree() + 1):
if P1[i] != 0:
print(P1[i], end = " ")
多項式爲6×14^+ 9X^11-12x^3 + 42並將其返回所有的非零係數但是我得到這樣
42 None None -12 None None None None None None None 9 None None 6
輸出
所以我的問題是我怎麼才能只顯示coeffients,也爲什麼沒有出現反正呢?
如果你的'if'語句永遠不匹配,當函數結束時'None'將被返回。 – BrenBarn
1)當函數結束時,所有的python函數隱式返回'None'。 2)您可以無條件地打印**所有**值。爲什麼不應該打印'無',如果那是'P1 [i]'的值? –
['return'](https://docs.python.org/3.6/reference/simple_stmts.html#return)後面的'break'是不必要的,因爲'return'已經離開了當前函數。 –