You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中用循环实现矩阵元素逆序转换(不依赖专用函数)

矩阵元素逆序转换实现方案

纯循环实现(无专用反转函数)

如果完全依赖循环完成,不需要任何内置反转函数,可以通过双重逆序遍历实现:

# 示例矩阵
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
reversed_matrix = []

# 从最后一行开始遍历原矩阵
for row_idx in range(len(matrix)-1, -1, -1):
    current_row = matrix[row_idx]
    reversed_row = []
    # 从当前行的最后一个元素开始遍历
    for col_idx in range(len(current_row)-1, -1, -1):
        reversed_row.append(current_row[col_idx])
    reversed_matrix.append(reversed_row)

print(reversed_matrix)  # 输出: [[9, 8, 7], [6, 5, 4], [3, 2, 1]]

逻辑说明

  1. 外层循环逆序遍历矩阵的行索引,从最后一行到第一行
  2. 内层循环逆序遍历当前行的列索引,把元素逐个添加到新行中
  3. 把处理好的逆序行依次加入结果矩阵,最终得到完全逆序的矩阵

结合list.reverse()的实现

如果你想利用list.reverse()简化行内元素的反转,需要注意该方法是原地修改列表,所以要先复制原行再操作,避免破坏原矩阵:

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
reversed_matrix = []

# 先反转每一行的元素
for row in matrix:
    # 复制原行再反转,避免修改原矩阵
    reversed_row = row.copy()
    reversed_row.reverse()
    reversed_matrix.append(reversed_row)

# 再反转整个矩阵的行顺序
reversed_matrix.reverse()

print(reversed_matrix)  # 输出: [[9, 8, 7], [6, 5, 4], [3, 2, 1]]

逻辑说明

  1. 遍历原矩阵的每一行,复制后调用reverse()反转行内元素,收集到临时矩阵
  2. 对临时矩阵整体调用reverse(),反转行的顺序,最终得到目标结果

内容的提问来源于stack exchange,提问作者Alelele

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 04:05:24