根據特定索引處的元素對列表/元組的列表/元組進行排序
像列表和元組這樣的數據結構通常包含以下元素子清單或子元組。如果您遇到基於每個子集的元素對此類結構進行排序的任務,以下技術提供了有效的解決方案。
使用元組或清單
元組和清單是儲存資料的有效選擇。元組是不可變的,這意味著它們的內容在創建後無法修改。另一方面,列表是可變的,並且允許更改其元素。出於排序目的,它們之間的選擇取決於您的特定場景。
按第二個元素排序
根據第二個元素對列表/元組的列表/元組進行排序每個子集中的元素,您可以使用Python中內建的sorted()函數。此函數採用一個可選的鍵參數來指定排序標準。
將排序()與 Lambda 函數結合使用
一種優雅的方法是將 lambda 函數用作關鍵論點。例如,要按列表列表中的第二個元素排序,您可以執行以下操作:
sorted_by_second = sorted(data, key=lambda tup: tup[1])
就地排序
如果您希望排序原始列表/元組就位而不建立新的排序列表,您可以使用sort() 方法代替。此方法也接受一個關鍵參數:
data.sort(key=lambda tup: tup[1]) # sorts in place
自訂排序順序
預設情況下,按升序排序。若要依降序排序,請指定反向選項:
sorted_by_second = sorted(data, key=lambda tup: tup[1], reverse=True)
依序就地排序
將原始清單/元組依降序排序,使用:
data.sort(key=lambda tup: tup[1], reverse=True) # sorts in place
以上是如何根據特定索引對列表/元組的列表/元組進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!