python如何反转二维数组的行

python如何反转二维数组的行

作者:Rhett Bai发布时间:2026-01-14阅读时长:0 分钟阅读次数:5

用户关注问题

Q
如何在Python中将二维数组的每一行顺序颠倒?

我有一个二维数组,想要把每一行的元素顺序都反转,该怎么操作?

A

使用列表推导式反转二维数组的每一行

可以使用列表推导式结合Python的切片功能来反转每一行,例如:

array = [[1, 2, 3], [4, 5, 6]]
reversed_array = [row[::-1] for row in array]

这样会得到[[3, 2, 1], [6, 5, 4]],即每一行的元素顺序都被反转了。

Q
用NumPy如何反转二维数组的行顺序?

在使用NumPy库时,有没有简单的办法反转二维数组中每一行的元素顺序?

A

利用NumPy切片实现行内元素反转

如果你的二维数组是NumPy数组,可以直接对列索引使用切片操作:

import numpy as np
array = np.array([[1, 2, 3], [4, 5, 6]])
reversed_array = array[:, ::-1]

这样可以快速反转每一行中的元素顺序。

Q
怎样不修改原数组,创建一个反转行的二维数组副本?

我想得到一个反转行元素的新二维数组,但不影响原数组,应该如何实现?

A

创建数组的副本并反转行元素

你可以先制作原数组的副本,再对副本进行行元素反转,例如:

import copy
array = [[1, 2, 3], [4, 5, 6]]
array_copy = copy.deepcopy(array)
reversed_array = [row[::-1] for row in array_copy]

这样能保证原数组保持不变,反转操作只影响副本。