使用python 2基于自定义行顺序对2D锯齿状列表进行排序

时间:2018-04-26 11:15:17

标签: python sorting

假设我在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 个答案:

答案 0 :(得分:3)

你可以这样做:

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