代码之家  ›  专栏  ›  技术社区  ›  Ombrophile

使用python 2根据自定义行顺序对二维锯齿列表排序

  •  2
  • Ombrophile  · 技术社区  · 8 年前

    假设python中有以下锯齿状列表:

    a = [[73, 74, 93, 97, 147],
         [5, 11, 12, 47],
         [987, 988, 989, 990, 991],
         [15, 16, 17, 22, 71, 988],
         [15, 16, 17]]
    

    我还碰巧有以下列表:

    b = [5, 3, 2, 4, 1]
    

    我想把表按行排序 a 根据提供的排序顺序 b ,即排序后, A. 应为:

    a = [[15, 16, 17],
         [987, 988, 989, 990, 991],
         [5, 11, 12, 47],
         [15, 16, 17, 22, 71, 988],
         [73, 74, 93, 97, 147]]
    

    我不知道怎么做。请帮帮我。

    1 回复  |  直到 8 年前
        1
  •  3
  •   Ashish Acharya    8 年前

    您可以这样做:

    output = [a[j-1] for j in b]