對一個清單進行倒序排序,另一個不區分大小寫
Python 提供了多種對清單進行排序的方法,包括按多個排序鍵。然而,標準排序函數可能並不總是提供所需的靈活性。
考慮一個包含多個元素元組的列表,例如 [(ele1A, ele2A), (ele1B, ele2B), (ele1C, ele2C)] 。要根據兩個鍵(一個按升序,另一個按降序)對該清單進行排序,同時確保一個鍵不區分大小寫,您需要採用稍微客製化的排序方法。
Python 的sorted() 函數可讓您透過 lambda 函數指定自訂排序鍵。透過利用此功能,您可以按以下方式對清單進行排序:
<code class="python"># Sort by the first key in ascending order and the second key in descending order sortedList = sorted(myList, key = lambda y: (y[0].lower(), -y[1])) # Or, sort by the first key in descending order and the second key in ascending order sortedList = sorted(myList, key = lambda y: (-y[0].lower(), y[1])) # Or, sort by both keys in descending order sortedList = sorted(myList, key = lambda y: (-y[0].lower(), -y[1]))</code>
透過對lambda 函數中第二個鍵(-y[1]) 的值取反,您可以有效地按相反順序對其進行排序。此外,您可以在第一個鍵上使用 lower() 來確保執行排序時不區分大小寫。
這種方法可讓您根據複雜的條件靈活地對清單進行排序,使您能夠有效地處理特定的排序要求。
以上是如何在Python中用一個鍵逆序對一個列表進行排序,而另一個鍵不區分大小寫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!