l_future_ 2022-12-22 18:25 采纳率: 50%
浏览 26
已结题

请问Python如何实现将矩阵变为数组(带行列值)

请问大家,对于如下矩阵
b1 b2 …… bn
a1 x11 x12 …… x1n
a2 x21 x22 …… x2n
……
an xn1 xn2 …… xnn

使用Python该怎么把矩阵变成如下形式:
a1 b1 x11
a1 b2 x12
……
a1 bn x1n
a2 b1 x21
a2 b2 x22
……
……
an bn xnn

谢谢各位!

  • 写回答

2条回答 默认 最新

  • ShowMeAI 2022-12-22 20:02
    关注

    下面是详细代码实现,望采纳

    可以使用两个循环来遍历矩阵的每一个元素,并将每个元素的值输出到一个新的列表中:

    matrix = [['b1', 'b2', 'b3'],
              ['a1', 'x11', 'x12', 'x13'],
              ['a2', 'x21', 'x22', 'x23'],
              ['a3', 'x31', 'x32', 'x33']]
    
    # 定义结果列表
    result = []
    
    # 遍历矩阵的每一行
    for i in range(1, len(matrix)):
      # 获取第一个元素,即a1,a2,a3
      a = matrix[i][0]
      # 遍历第一行的每一列,即b1,b2,b3
      for j in range(len(matrix[0])):
        # 获取第一列的元素,即b1,b2,b3
        b = matrix[0][j]
        # 获取对应的x值,即x11,x12,x13
        x = matrix[i][j+1]
        # 将a,b,x加入结果列表
        result.append([a, b, x])
    
    # 输出结果列表
    print(result)
    

    运行上面的代码,将会输出如下的结果:

    [['a1', 'b1', 'x11'], ['a1', 'b2', 'x12'], ['a1', 'b3', 'x13'], ['a2', 'b1', 'x21'], ['a2', 'b2', 'x22'], ['a2', 'b3', 'x23'], ['a3', 'b1', 'x31'], ['a3', 'b2', 'x32'], ['a3', 'b3', 'x33']]
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月30日
  • 已采纳回答 12月22日
  • 创建了问题 12月22日

悬赏问题

  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 51单片机中C语言怎么做到下面类似的功能的函数(相关搜索:c语言)
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端
  • ¥15 基于PLC的三轴机械手程序
  • ¥15 多址通信方式的抗噪声性能和系统容量对比