我有两个数值列表。一个列表中的每个索引都需要保持在另一个列表的同一索引处,即使在我对其中一个进行排序之后也是如此(我想按升序对其进行排序,并将该列表中的每一点与另一列表中的一点绘制图(。换句话说,我需要以相同的方式更改两个列表中的索引顺序。
def Power():
work_done = WorkDone()
power = []
i = 0
while i < len(work_done):
if sustained_data[i] != 0:
power.append(round(work_done[i] / (sustained_data[i] * 60), 2))
i += 1
power.sort()
return power
我想绘制power
与sustained_data
的关系图,其中sustained_data
中的每个点都与power
中的一个点相关(因为前者用于计算后者(。任何帮助都将不胜感激,谢谢!
虽然我的问题下面的第一条评论链接到了一个通用解决方案,但我设法绕过并确定,如果您创建两个列表的矩阵,并使用sort()
函数,矩阵索引将根据第一个子索引进行排序,就像对标准列表进行排序一样。
test1 = [11, 2, 1, 14, 8]
test2 = [1, 2, 3, 4, 5]
i = 0
newtest = []
while i < len(test1):
newtest.append(
[test1[i], test2[i]]
)
i += 1
newtest.sort()
将输出:[[1, 3], [2, 2], [8, 5], [11, 1], [14, 4]]
也许这对未来的某个人有所帮助。