要根据Python中具有相同项的另一个列表对列表进行重新排序,可以使用zip()
函数将两个列表组合在一起,然后使用sorted()
函数进行排序。以下是一个示例:
假设我们有两个列表:
list1 = [3, 1, 2]
list2 = ['c', 'a', 'b']
我们希望根据list2
中的顺序对list1
进行排序。可以使用以下代码:
# 将两个列表组合在一起
combined = list(zip(list1, list2))
# 根据第二个元素(即list2中的元素)进行排序
sorted_combined = sorted(combined, key=lambda x: x[1])
# 提取排序后的第一个元素(即list1中的元素)
sorted_list1 = [item[0] for item in sorted_combined]
print(sorted_list1)
输出结果将是:
[1, 2, 3]
list1
和list2
组合成一个元组列表,例如[(3, 'c'), (1, 'a'), (2, 'b')]
。list2
中的元素)对组合后的列表进行排序。希望这个解答对你有帮助!
领取专属 10元无门槛券
手把手带您无忧上云