Python——按 K 倍數對行進行排序


當需要按 K 的倍數對行進行排序時,可定義一個使用列表解析和模運算子的方法。

以下是其用例演示:

示例

即時演示

def multiple_sort_val(row):
   return len([ele for ele in row if ele % K == 0])

my_list = [[11, 44, 7, 11], [7, 5, 44, 11], [11, 6, 35, 44], [92, 92, 5]]

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

K = 11
print("The value for K is ")
print(K)

my_list.sort(key=multiple_sort_val)

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

輸出

The list is :
[[11, 44, 7, 11], [7, 5, 44, 11], [11, 6, 35, 44], [92, 92, 5]]
The value for K is
11
The resultant list is :
[[92, 92, 5], [7, 5, 44, 11], [11, 6, 35, 44], [11, 44, 7, 11]]

說明

  • 定義了一個獲取列表作為引數的方法。

  • 它使用列表解析和“len”方法來檢查每個列表除以特定值 K 時餘數或結果是否為 0。

  • 此列表的大小作為輸出返回。

  • 在方法外部,定義了一個列表的列表,並將其顯示在控制檯。

  • 定義了一個 K 值並將其顯示在控制檯。

  • 使用“sort”方法對列表進行排序,指定鍵為先前定義的方法。

  • 這是顯示在控制檯的輸出。

更新於:04-9 月-2021

113 瀏覽

開啟你的 事業

完成該課程以獲得認證

開始
廣告
© . All rights reserved.