得到矩阵的行和列

时间:2016-10-04 11:27:24

标签: python

我想知道如何获取此矩阵的行和列。我想遍历每个元素[row] [column],但我不知道如何获取这些。

imaginary_axis = 100
real_axis = 1

mixed_matrix = [[0 for j in xrange(imaginary_axis)] for i in xrange(real_axis)]

for row in mixed_matrix[0]:
    print(row)
    for column in mixed_matrix:
         print(column)
         check(mixed_matrix[row][column])

这会引发错误。我怎样才能让它发挥作用?

TypeError: list indices must be integers, not list

我知道为什么会收到此错误,但我不知道如何才能使该列正确。

2 个答案:

答案 0 :(得分:0)

我认为,您可以像enumerate()

一样使用smth

因为在你的例子中你的column是一个列表,但正如我所看到的 - 你想要这个列表中的元素数量。

我编辑我的回答:

你想要什么?魔法?没有魔力。你有矩阵,像这样: [[1,2,3]]

列表中有一个列表。 你想按元素迭代吗?

for lst in matrix: for element in lst: print(element)

或者您可以将列表压缩到一个列表中,然后按该列表中的元素进行迭代。

如果您想通过索引进行访问 - 您应该使用它。 你应该有两个循环,列表的数量是行数,列表中元素的数量 - 是列数。

你需要什么样的生活:

for row in range(0, len(mixed_matrix)):
   # mixed_matrix[row] - is your FIRST list
   for column in range(0, len(mixed_matrix[row])):
    print(mixed_matrix[row][column])

答案 1 :(得分:0)

现在我们使用 numpy 来获取给定矩阵的行 x 列

import numpy as np
A = np.array([[56.0, 0.0 , 4.4, 68.0], 
         [1.2, 104.0, 52.0, 8.0],
         [1.8, 135.0, 99.0, 0.9]])
print(A.shape)     

将输出 (3, 4) 3 行 4 列