且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

按字母顺序对元组字符串进行排序,并按字母顺序对字符串元组进行反向排序'

更新时间:2022-11-16 13:33:42

这是一个itertools.groupby解决方案:

from itertools import groupby
from operator import itemgetter

li = [('x', 'y'), ('s', 'e'), ('s', 'a'), ('x', 'z')]

[p for k, g in groupby(sorted(li, reverse=True), itemgetter(0)) for p in reversed(list(g))]
# [('x', 'y'), ('x', 'z'), ('s', 'a'), ('s', 'e')]