python - 使用 python 2 根据自定义行顺序对 2D 锯齿状列表进行排序

标签 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]

我希望根据b提供的排序顺序对列表a的行进行排序,即排序后,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]]

我不明白该怎么做。请帮助我。

最佳答案

你可以这样做:

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

关于python - 使用 python 2 根据自定义行顺序对 2D 锯齿状列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50041565/

相关文章:

python - 用于非美国股市数据的 Stooq API

python - 对永远重复的循环的第一个实例执行操作

python - 如何替换字符串中的 `\n` 而不是 Python 中的 `\n\n`?

java - 排序功能 - 如何改进

sql - 使用 sqlite 对数字(和数字+字母)进行排序

python - 在 PyCharm 中禁用 IPython 控制台

python - XML 文件解析 - 从子级的子级获取数据

java - 仅通过单个循环进行冒泡排序

r - 按 purrr::transpose 对列表进行排序,但缺少某些值

java - 类不会计算它应该计算的内容,也是 : sorting arrays of objects?