Python - 根据比其前一个元素更大的元素数量对矩阵排序
当需要根据比前一个元素更大的元素数量对矩阵进行排序时,可以使用函数使用列表解析和“len”方法。
以下是对其进行演示:
示例
def fetch_greater_freq(row): return len([row[idx] for idx in range(0, len(row) - 1) if row[idx] < row[idx + 1]]) my_list = [[11, 3, 25, 99, 10], [5, 3, 25, 4], [77, 11, 5, 3, 77, 77], [11, 3, 25]] print("The list is :") print(my_list) my_list.sort(key=fetch_greater_freq) print("The resultant list is :") print(my_list)
输出
The list is : [[11, 3, 25, 99, 10], [5, 3, 25, 4], [77, 11, 5, 3, 77, 77], [11, 3, 25]] The resultant list is : [[5, 3, 25, 4], [77, 11, 5, 3, 77, 77], [11, 3, 25], [11, 3, 25, 99, 10]]
说明
定义了一个名为“fetch_greater_freq”的方法,该方法将列表作为参数。
遍历列表,访问特定元素并检查它是否小于其连续元素。
它的长度作为该方法的输出返回。
在方法外部,定义了一个整数列表列表,并显示在控制台上。
使用排序方法对列表进行排序,方法是将先前定义的方法作为参数传递。
输出显示在控制台上。
广告