我正在寻找可以将列表中的位置更改应用于其他列表的函数。 例如:
liste1 = [3, 4, 1]
liste2 = ['a', 'b', 'c']
liste1.sort() #so liste1 = [1,3,4]
if liste1 = [1,3,4] :
liste2 = ['c', 'a', 'b']
我可以自己更改 liste2
的位置,但我有 270,000 个值,这就是为什么我要寻找可以执行此操作的函数的原因。
答案 0 :(得分:1)
您可以将列表压缩在一起,对它们进行排序然后解压缩。
liste1 = [3, 4, 1]
liste2 = ['a', 'b', 'c']
merged_lists = sorted(zip(liste1, liste2))
liste1, liste2 = zip(*merged_lists)
print(liste1, liste2, sep="\n")
输出
(1, 3, 4)
('c', 'a', 'b')