在循环中定义多个矩阵

时间:2016-12-19 06:54:55

标签: python-2.7 loops for-loop matrix

我想创建一组矩阵(所有3 X 3),B ij (如B11,B12,B13,B21,B22,B23,B31,B32,B33都是3 X 3)在 ij 条目处为1,在其他地方为0。例如。

B_12 = [[0,1,0],
         [0,0,0],
         [0,0,0]] 

B_23 = [[0,0,0],
        [0,0,1],
        [0,0,0]]

我尝试使用以下代码

for z in range(9):
    B = [[0,0,0],
         [0,0,0],
         [0,0,0]]

    for i in range(3):
        for j in range(3):
            if i==j:
                val = 1
            else:
                val = 0
            B[i][j] = val
    print B

但它没有给出理想的矩阵。 有人能建议我正确的逻辑吗?

谢谢

1 个答案:

答案 0 :(得分:0)

如果我能够正确理解你的问题,那么你要找的是修改矩阵中索引值的代码,这很简单。

B = [
        [0, 0, 0],
        [0, 0, 0],
        [0, 0, 0]
    ]
B[i][j] = 1 # This is your B_ij

我认为你不需要循环。 如果您正在寻找其他东西,请正确地重新解释这个问题。