有这个问题的麻烦 . 我不知道出了什么问题 . 这看起来有点太复杂了,我收到了错误 . 我实际上是用维基百科的伪代码做的 .

import numpy as np
import math

A = [[5,1,0,2,1],[0,4,0,1,2],[1,1,4,1,1],[0,1,2,6,0],[0,0,1,2,4]]
b = [[1],[2],[3],[4],[5]]

def swap_rows(A,i,j):
    temp = A[i]
    A[i]=A[j]
    A[j] = temp
    return(A) 

def Gauss(A):
    n = len(A)
    for k in range(n):
        myList = []
        for p in range(k,n):
            myList.append(abs(A[p][k]))
        i_max = np.argmax(myList)
        if A[i_max][k] == 0:
            print('Error: Matrix is singular')
            return
        A = swap_rows(a,k,i_max)
        for i in range(k,n):
            f = (A[i][k])/(A[k][k])
            for j in range(k,n):
                A[i][j] = A[i][j]-A[k][j]*f
        A[i][k] = 0
    return(A)

Gauss(A)