def subst(A):
n = len(A)
x = n*[0]
for i in range(n-1, -1, -1):
s = sum([A[i][j]*x[j]
for j in range(i+1,n)])
if A[i][i]!=0:
x[i] = (A[i][n] - s)/A[i][i]
else:
print("has no solution!")
break
return x
我已经尝试了几种方法,直到直到True,但我无法解决此问题,目的是仅在有解决方案的情况下显示数组,即使没有解决方案,程序也会显示[ 0,0]以及消息错误。我怎么不显示此[0,0]?
答案 0 :(得分:0)
嘿,请不要违反else语句,而是返回空字符串。
请参阅:
def subst(A):
n = len(A)
x = n*[0]
for i in range(n-1, -1, -1):
s = sum([A[i][j]*x[j]
for j in range(i+1,n)])
if A[i][i]!=0:
x[i] = (A[i][n] - s)/A[i][i]
else:
print("has no solution!")
return ""
return x
print(subst([[0,0,0],[0,0,0]]))