我有两个列表 x 和 y。前者总是长于或等于后者。
x = ["foo","bar","qux","zox"]
y1 = ["zox", "qux","foo"]
我要做的是根据x的顺序对y1进行排序。 屈服
["foo","qux","zox"]
我试过了,但是没用:
In [10]: [x[1] for x in sorted(zip(x,y))]
Out[10]: ['zox', 'qux']
正确的做法是什么?
请您参考如下方法:
您可以使用 sorted 的 key 参数来使用第一个列表中的 index。
>>> sorted(y1, key=x.index)
['foo', 'qux', 'zox']
