Python - 按位數對列表項進行排序


當需要根據數字對列表的元素進行排序時,可以使用“max”、”max”方法。我們還將使用“sorted”方法、”lambda”函式和“ljust”。

示例

以下是對相同內容的演示 -

my_list = [4344, 2611, 122, 541, 33, 892, 48292, 460, 390, 120, 10, 2909, 11239, 1]

print("The list is : " )
print(my_list)

print("The list after sorting is : " )
my_list.sort()
print(my_list)

my_temp_val = map(str, my_list)

my_max_length = max(map(len, my_temp_val))

my_result = sorted(my_list, key = lambda index : (str(index).ljust(my_max_length, 'a')))

print("The resultant list is : ")
print(my_result)

輸出

The list is :
[4344, 2611, 122, 541, 33, 892, 48292, 460, 390, 120, 10, 2909, 11239, 1]
The list after sorting is :
[1, 10, 33, 120, 122, 390, 460, 541, 892, 2611, 2909, 4344, 11239, 48292]
The resultant list is :
[10, 11239, 120, 122, 1, 2611, 2909, 33, 390, 4344, 460, 48292, 541, 892]

說明

  • 定義了一個字串列表,並顯示在控制檯上。

  • 使用排序方法對列表進行排序,並顯示在控制檯上。

  • 使用“map”方法將列表中的所有元素轉換為字串。

  • 這會分配給一個變數

  • 找到列表中最大元素並分配給一個變數。

  • 使用排序方法對列表進行排序,鍵是具有左對齊功能的 lambda 函式。

  • 這會分配給結果。

  • 這作為輸出顯示在控制檯上。

更新於: 13-9-2021

289 瀏覽

開啟您的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.