如何根據對列表或元組依據內部元素元組的某個值排序

2021-10-17 14:16:48 字數 893 閱讀 1475

我在列表或元組中有一些資料,如下所示:

data = [[1,2,3], [4,5,6], [7,8,9]]

我想按子集中的第二個元素排序 . 意思是,按2,5,8排序,其中2來自(1,2,3),5來自(4,5,6) . 這樣做的常見方法是什麼?

方法一:

sorted_by_second = sorted(data, key=lambda tup: tup[1])

或者:data.sort(key=lambda tup: tup[1])

方法二:

def sec_elem(s):

return s[1]

sorted(data, key=sec_elem)

方法三:

itemgetter() 比 lambda tup: tup[1] 快一些

from operator import itemgetter

data.sort(key=itemgetter(1))

print(data)

例子:依據列表內的元組的第二個元素對列表內的元組降序排序

make_money =[(

'2021-01-26'

,50000),

('2021-01-27'

,40000),

('2021-01-28'

,80000)]

make_money.sort(key=

lambda tup:tup[

1],reverse=

true

)print

(make_money)

輸出結果:

[(『2021-01-28』, 80000), (『2021-01-26』, 50000), (『2021-01-27』, 40000)]

python列表元素為元組的遍歷

先看一段標準的遍歷 lst age 20 3 name zhang 4 for i,j,k in lst print i,j,k 結果為 應該可以清晰地看出,在lst中挨個取出元組,用於接收元組內元素的變數為i,j,k,變數個數必須與元組內元素個數相同。再看實際應用 dic print dic.it...

如何查詢(列表,元組)中某個元素出現的全部索引

a 3,4,5,6,6,5,4,3,2,1,7,8,8,3 my list list for index,nums in enumerate a 使用enumerate a 輸出為乙個元組,元組中第乙個元素是列表的索引,元組中第二個元素是列表的資料 index,nums 使用拆包 把索引給index...

python中星號的意義( 字典, 列表或元組)

傳遞實參和定義形參 所謂實參就是呼叫函式時傳入的引數,形參則是定義函式是定義的引數 的時候,你還可以使用兩個特殊的語法 呼叫函式時使用 test args 中 的作用 其實就是把序列 args 中的每個元素,當作位置引數傳進去。比如上面這個 如果 args 等於 1,2,3 那麼這個 就等價於 te...