在Python中,我用以下方式定义了我的矩阵
A = [[1, 4, 5, 12],
[-5, 8, 9, 0],
[-6, 7, 11, 19],
[-2, 7, 4, 23]]并希望通过下面的print(A[2][:])和print(A[:][2])分别为第3行和第3列打印出各个列和行。
令我惊讶的是,他们都印了第三排。
为了学习,我不使用Numpy或任何数学软件包。
不知道为什么print(A[2][:])和print(A[:][2])会产生相同的输出
发布于 2022-07-09 19:58:37
这似乎遵循了访问列表中的各种元素的相同原则。也就是说,例如,通过调用A[2],您将调用第三个元素中的整个数据(在本例中是它自己的列表)。通过进一步声明A[2][:],您将调用第三个列表中的所有元素。同样的逻辑应用于A[:][2]调用--即,所有信息都在您的A列表中调用,然后进一步规定要显示第三个元素--也就是说,这就是第三个‘子列表’。
发布于 2022-07-09 20:01:40
要提取列,需要手动循环抛出所有行并提取元素,例如,使用列表理解:
third_column = [row[2] for row in A]https://stackoverflow.com/questions/72923910
复制相似问题