python - 如何根据另一个列表对列表进行排序? Python

标签 python list sorting python-3.3

<分区>

所以如果我有一个列表:

name = ['Megan', 'Harriet', 'Henry', 'Beth', 'George']

我还有另一个列表,其中每个值代表正确顺序的名称

score_list = [9, 6, 5, 6, 10]

所以 Megan = 9 和 Beth = 6(顺便说一句,这是来自字典)

我如何按字母顺序对名称进行排序,但保持 score_list 匹配名称? 我已经使用冒泡排序方法对数字进行了排序,但没有使用字符串。

最佳答案

您可以使用 zip 将它们与元组同时排序。排序将按名称:

tuples = sorted(zip(name, score_list))

然后

name, score_list = [t[0] for t in tuples], [t[1] for t in tuples]

关于python - 如何根据另一个列表对列表进行排序? Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29876580/

相关文章:

list - 在 Scala 2.7.5 中将元素附加到列表的非弃用方法?

Python 列表和字典交叉引用

sorting - SSRS Tablix 排序w/行和列组

python - Pandas:重新索引 Unsorts 数据框

python - 使用 pandas 和 Excel 工作表数据根据用户 ID 获取数据?

python - 导入语句中的点表示什么?

python - Selenium ElementNotVisibleException : Message: element not interactable

python - 如何修补/模拟 logging.getlogger()

c# - 多线程同步列表<T>

c - 如何按字母顺序对字符串数组(二维数组)进行排序?