如何按降序和升序对列表列表进行排序?

Patricia Arquette
发布: 2024-10-21 17:24:02
原创
434 人浏览过

How to Sort a List of Lists in Descending and Ascending Order?

按降序和升序对列表进行排序

给定一个包含两个元素的列表,目标是对列表进行排序首先根据第一个元素按降序排列,然后根据第二个元素按升序排列。

为了实现这一点,我们可以利用 sort() 方法和自定义键函数。这是一个解决方案:

<code class="python">L = [['a',1], ['a',2], ['a',3], ['b',1], ['b',2], ['b',3]]
L.sort(key=lambda k: (k[0], -k[1]), reverse=True)</code>
登录后复制

sort() 方法的关键参数指定一个确定排序顺序的函数。在本例中,我们定义了一个 lambda 函数,它接受一个列表 k 并返回一个元组。元组的第一个元素是列表k[0]的第一个元素,用于降序排序。第二个元素是列表第二个元素的否定 -k[1],用于升序排序。

通过先降序排序,reverse=True 保证每个列表的第一个元素('a' 或 'b') 按相反的字母顺序排序。随后,对第二个元素进行升序排序,整个列表排序为:

[['b', 1], ['b', 2], ['b', 3], ['a', 1], ['a', 2], ['a', 3]]
登录后复制

这有效地实现了所需的排序标准。

以上是如何按降序和升序对列表列表进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!