使用多个键对列表进行排序,包括逆序
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中文网其他相关文章!