我有一些列表,例如:
mylist1 = ['alpha', 'green']
mylist2 = ['blue', 'alpha', 'red']
我想按照这个自定义的顺序列表对这两个列表进行排序:['red','blue','green','alpha']
这样mylist1 = ['green', 'alpha']
和 mylist2 = ['red','blue','alpha']
在Python中怎么做呢?
sort_order
排序:sort_order = {v:i for i,v in enumerate(['red', 'blue', 'green', 'alpha'])}
- Steven Rumbalski.sort(key=lambda el: sort_order[el])
或者sort_order.__getitem__
。无论哪种方式,它看起来都不太好看,所以我会选择这种方法,除非速度最终变得很重要。 - Claudiukey=sort_order.get
- Steven Rumbalski