麻烦的
# TODO 构造增广矩阵,假设A,b行数相同
def augmentMatrix(A, b):
if(len(A) != len(b)):
raise 'The number of rows is different'
result = []
for i in range(len(A)):
row = []
for j in range(len(A[i])):
row.append(A[i][j])
for j in range(len(b[i])):
row.append(b[i][j])
result.append(row)
return result
优化后
# TODO 构造增广矩阵,假设A,b行数相同
def augmentMatrix(A, b):
return [AA + bb for AA, bb in zip(A,b)]
A = [[1,2,3],[4,5,6],[7,8,9]]
b = [[1],[2],[3]]
print augmentMatrix(A,b)
[[1, 2, 3, 1], [4, 5, 6, 2], [7, 8, 9, 3]]
注: 解读一下