目标是根据二维列表中后面列表的值,对前一个进行同步排序。
list = [['张三', '李四', '王五'], [11, 2, 8]]
list[0].sort(key=lambda x:list[1][list[0].index(x)])
print(list)
结果报错:
乍一看,张三肯定是在list[0]里的,却显示张三 is not in list.想了半天没懂,结果发现用sorted可以。至于顺序反了无伤大雅,加个反转就好。
结论:list的sort函数会先将原列表清空,导致中途无法查到数据,之后排序完以后再加回来。