📅  最后修改于: 2023-12-03 15:04:39.963000             🧑  作者: Mango
在实际开发中,我们常常需要同时对多个列表进行排序,且排序的依据只有一个。此时我们可以先根据该依据对一个列表进行排序,再根据这个列表的顺序对其他列表进行相应顺序的调整。下面我们来看一下具体的实现方法。
# 定义待排序的多个列表
list1 = [3, 2, 1]
list2 = ['c', 'b', 'a']
list3 = [33, 22, 11]
# 根据list1的排序结果,对其他两个列表进行调整
zipped = zip(list1, list2, list3)
sorted_zip = sorted(zipped)
new_list1, new_list2, new_list3 = zip(*sorted_zip)
# 输出排序结果
print(new_list1) # 输出:(1, 2, 3)
print(new_list2) # 输出:('a', 'b', 'c')
print(new_list3) # 输出:(11, 22, 33)
list1 = [3, 2, 1]
list2 = ['c', 'b', 'a']
list3 = [33, 22, 11]
zipped = zip(list1, list2, list3)
sorted_zip = sorted(zipped)
new_list1, new_list2, new_list3 = zip(*sorted_zip)
print(new_list1)
print(new_list2)
print(new_list3)
以上就是根据单个列表的排序对多个列表进行排序的具体实现方法。