通过元素相邻差的总和排序矩阵行的Python程序
示例
以下是相同的演示
def diff_summation_elem(row):
return sum([abs(row[index + 1] - row[index]) for index in range(0, len(row) - 1)])
my_list = [[97, 6, 47, 3], [6, 88, 3, 26], [71, 53, 34, 65], [15, 36, 5,62]]
print("列表是:")
print(my_list)
my_list.sort(key=diff_summation_elem)
print("排序后的列表是:")
print(my_list)
输出
列表是:
[[97, 6, 47, 3], [6, 88, 3, 26], [71, 53, 34, 65], [15, 36, 5, 62]]
排序后的列表是:
[[71, 53, 34, 65], [15, 36, 5, 62], [97, 6, 47, 3], [6, 88, 3, 26]]
解释
-
定义了一个名为“diff_summation_elem”的方法,该方法将列表作为参数。
-
使用“abs”方法和“sum”方法与列表推导式一起迭代列表并获取特定的索引值。
-
在方法外定义了一个列表的列表,并在控制台上显示。
-
根据键是方法(先前定义)对列表进行排序。
-
在控制台上显示输出。