首页  >  文章  >  后端开发  >  如何使用多个键对列表进行排序,包括 Python 中的反向排序?

如何使用多个键对列表进行排序,包括 Python 中的反向排序?

Susan Sarandon
Susan Sarandon原创
2024-11-02 05:58:03723浏览

How to Sort Lists With Multiple Keys, Including Reverse Ordering in Python?

使用多个键对列表进行排序,包括逆序

Python 提供了sorted() 函数来对列表进行排序。要按多个键排序,可以使用 lambda 函数作为键参数。但是,当使用多个键排序时,默认情况下所有键都按升序排序。

考虑元组列表:

<code class="python">myList = [(ele1A, ele2A), (ele1B, ele2B), (ele1C, ele2C)]</code>

要使用两个键对此列表进行排序,请使用以下代码可以使用:

<code class="python">sortedList = sorted(myList, key=lambda y: (y[0].lower(), y[1]))</code>

此代码按第一个键按升序对元素进行排序,然后按第二个键按升序对元素进行排序。要使用一个键按相反顺序排序,可以修改 lambda 函数:

<code class="python">sortedList = sorted(myList, key=lambda y: (y[0].lower(), -y[1]))</code>

在此示例中,y[1] 之前的负号反转第二个键的排序顺序。但是,此代码将按第二个键对所有元素进行逆序排序。

要按一个键逆序排序并按另一个键升序排序,可以使用以下代码:

<code class="python">sortedList = sorted(myList, key=lambda y: (-y[0].lower(), y[1]))</code>

这里,负号与第一个键一起使用,以反转第一个键的排序顺序。

以上是如何使用多个键对列表进行排序,包括 Python 中的反向排序?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn