我试图通过在每行的末尾附加1来增加矩阵中行的长度。
matrix_1 = [[-4, -2, -3],[-1, -1, 1],[-2, 0, 1]]
我需要输出:
matrix_2 = [[-4,-2,-3,1],[-1,-1,1,1],[-2,0,1,1]]
由于
答案 0 :(得分:1)
matrix_1 = [[-4, -2, -3],[-1, -1, 1],[-2, 0, 1]] for i in matrix_1: i.append(1)
[[-4, -2, -3, 1], [-1, -1, 1, 1], [-2, 0, 1, 1]]
答案 1 :(得分:1)
如果您正在使用此矩阵进行繁重的数值工作,您可能会从使用numpy(基本上是 Python线性algbera库)中受益。如果您的矩阵是一个numpy数组而不是嵌套列表,如下所示:
import numpy as np
matrix_1 = np.array([[-4, -2, -3],[-1, -1, 1],[-2, 0, 1]])
然后你可以使用numpy的hstack
函数扩展它:
column_of_ones = np.ones((matrix_1.shape[0], 1))
matrix_2 = np.hstack((matrix_1, column_of_ones))
答案 2 :(得分:0)
matrix_1 = [[-4, -2, -3],[-1, -1, 1],[-2, 0, 1]]
def add_one(L, V):
return [X + [V] for X in L]
print(add_one(matrix_1, 1))
输出结果为:
[[-4, -2, -3, 1], [-1, -1, 1, 1], [-2, 0, 1, 1]]
答案 3 :(得分:0)
>>> [i + [1] for i in matrix_1]
[[-4, -2, -3, 1], [-1, -1, 1, 1], [-2, 0, 1, 1]]
只是为了好玩
>>> zip(*zip(*matrix_1) + [(1,) * 3])
[(-4, -2, -3, 1), (-1, -1, 1, 1), (-2, 0, 1, 1)]