python – 对深度嵌套的元组进行排序

我有一个嵌套元组列表,如下所示:

l = [('apple', ['gala','fuji', 'macintosh']),
('pear', ['seckel','anjou','bosc'])]

我喜欢按字母顺序对元组的第二项进行排序,以便它看起来像:

l2 = [('apple', ['fuji','gala', 'macintosh']),
('pear', ['anjou','bosc','seckel'])]

我知道我可以将sorted(l)应用于它,但我对Python很新,我遇到迭代问题.我怎样才能做到这一点?

解决方法:

类似下面的内容 – 使用list comp构建新的元组…

l = [('apple', ['gala','fuji', 'macintosh']),
('pear', ['seckel','anjou','bosc'])]

l2 = [(k, sorted(v)) for k, v in l]
# [('apple', ['fuji', 'gala', 'macintosh']), ('pear', ['anjou', 'bosc', 'seckel'])]
上一篇:基于最后一个元素的Python元组排序


下一篇:python – 获取“’元组’对象的列表的变量元组不支持项目分配”