首頁  >  文章  >  後端開發  >  如何使用多個鍵對列表進行排序,包括 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