选取矩阵中的行和列

  • 本文关键字:选取 python matrix row
  • 更新时间 :
  • 英文 :


在Python中,我以以下方式定义了我的矩阵

A = [[1, 4, 5, 12], 
[-5, 8, 9, 0],
[-6, 7, 11, 19],
[-2, 7, 4, 23]]

,并希望尝试通过以下方式打印出各个列和行print(A[2][:])print(A[:][2])分别为第三行和第三列。

令我惊讶的是,他们都打印了第三行。

为目的的学习,我不使用Numpy或任何数学包。

不确定为什么print(A[2][:])print(A[:][2])的输出相同

这似乎遵循访问列表中各种元素的相同原则。也就是说,通过调用A[2],您调用的是第三个元素中的整个数据(在本例中是它自己的列表)。通过进一步声明A[2][:],您将调用第三个列表中的所有元素。同样的逻辑应用于A[:][2]调用-即,在您的A列表中调用所有信息,然后您进一步规定您希望显示第三个元素-也就是第三个子列表。

要提取一列,您需要手动循环抛出所有行并提取元素,例如,使用列表推导式:

third_column = [row[2] for row in A]

最新更新