我想知道如何获取此矩阵的行和列。我想遍历每个元素[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
我知道为什么会收到此错误,但我不知道如何才能使该列正确。
答案 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 列