基於給定的屬性索引對錶格進行分類的 Python 程式


假設我們有一個 2 維陣列,包含運動員資訊。該資訊包括排名、年齡、身高。每行包含不同運動員的資訊。我們還有一個數字 k。我們必須根據第 k 個屬性對資料進行排序。

因此,如果輸入類似於

排名年齡身高
125190
235180
333185
426175
535180

而且 k = 1。

那麼輸出將是

排名年齡身高
125190
426175
333185
235180
535180

[[1, 25, 190], [4, 26, 175], [3, 33, 185], [2, 35, 180], [5, 35, 180]]

為了解決這個問題,我們將執行以下步驟——

  • 為名為 info 的 2D 陣列呼叫 sort() 函式

  • 定義一個基於第 k 個引數進行排序的功能,並將其傳遞給 sort() 函式的 key 引數。

範例

讓我們看看以下實現以獲得更好的理解

def solve(info, k):
   info.sort(key = lambda x: x[k])
   return info

info = [[1, 25, 190],[2, 35, 180],[3, 33, 185],[4, 26, 175],[5, 35, 180]]
k = 1
print(solve(info, k))

輸入

[[1, 25, 190],[2, 35, 180],[3, 33, 185],[4, 26, 175],[5, 35, 180]], 1

輸出

[[1, 25, 190], [4, 26, 175], [3, 33, 185], [2, 35, 180], [5, 35, 180]]

更新於:12-Oct-2021

371 次瀏覽

開啟你的 職業

透過完成課程來獲得認證

入門
廣告
© . All rights reserved.