如何正确反转二维NumPy数组?保留第一行反转第二行元素
解决仅反转二维NumPy数组第二行元素的问题
你之前用的np.flip(t, axis=1)或t[:,::-1]会反转所有行的元素,np.flip(t, axis=0)则是反转行的顺序,这些操作都不符合你只反转第二行的需求。
要实现保留第一行不变、仅反转第二行的效果,直接对第二行单独处理即可:
import numpy as np t = np.array([[1,2,3,4],[5,6,7,8]]) # 反转第二行(索引为1的行)并赋值回去 t[1] = t[1,::-1] print(t)
执行后输出:
array([[1, 2, 3, 4], [8, 7, 6, 5]])
也可以用np.flip单独处理第二行:
t[1] = np.flip(t[1])
同样能得到预期结果。
核心逻辑就是只针对目标行(索引1)执行反转操作,而非对整个数组的所有行或行维度进行批量处理。
内容的提问来源于stack exchange,提问作者Charanjit Pabla
相关产品推荐
相关产品推荐

