要按相同索引对Python列表排序,可以使用zip函数将两个列表组合成一个元组的列表,然后使用sorted函数对元组列表进行排序,最后再使用zip函数将排序后的元组列表拆分成两个列表。
下面是一个示例代码:
# 定义两个列表
lst1 = [3, 1, 4, 2]
lst2 = ['c', 'a', 'b', 'd']
# 使用zip函数将两个列表组合成一个元组的列表
combined = list(zip(lst1, lst2))
# 使用sorted函数对元组列表按第一个元素进行排序
sorted_combined = sorted(combined, key=lambda x: x[0])
# 使用zip函数将排序后的元组列表拆分成两个列表
sorted_lst1, sorted_lst2 = zip(*sorted_combined)
# 输出排序后的结果
print(sorted_lst1)
print(sorted_lst2)
运行结果如下:
(1, 2, 3, 4)
('a', 'd', 'c', 'b')
在这个示例中,我们定义了两个列表lst1和lst2,分别包含数字和字母。首先,使用zip函数将两个列表组合成一个元组的列表combined。然后,使用sorted函数对combined进行排序,排序的依据是元组的第一个元素。最后,使用zip函数将排序后的元组列表拆分成两个列表sorted_lst1和sorted_lst2。
这样我们就可以按相同索引对两个列表进行排序了。
上一篇:按相同属性分组的对象创建字符串
下一篇:按相同位置上的字符过滤字符串列表