Python 如何按特定顺序对列表进行排序
我正在研究置乱排序函数,该函数包含两个参数:Python 如何按特定顺序对列表进行排序,python,Python,我正在研究置乱排序函数,该函数包含两个参数: 要排序的字符串列表 显示字母表中字母顺序的字符串(不一定是标准顺序) 它返回根据第二个参数排序的字符串列表 例如: scramble(['abc', 'bac', 'abb'], 'cba') 应该回来 ['bac', 'abc', 'abb'] 此调用中的第二个参数显示为便于比较,c
scramble(['abc', 'bac', 'abb'], 'cba')
应该回来
['bac', 'abc', 'abb']
此调用中的第二个参数显示为便于比较,c
def scramble(l : [str], ordering : str) -> [str]:
for i in ordering:
for h in l:
l.sort(key = h.index(i))
break
return l
我的代码不起作用,我只是按照列表中项目的字母索引(根据顺序)对列表进行排序。有人能帮我修改代码吗
def scramble(words, order):
return sorted(words, key = lambda word: [order.index(char) for char in word])