Python - 按总字符对矩阵进行排序
当需要按总字符数对矩阵进行排序时,定义了一种方法,该方法使用列表推导和'sum'和'len'方法来确定结果。
以下是相同的演示-
示例
def total_characters(row): return sum([len(element) for element in row]) my_list = [["pyt", "is", "fun"], ["python", "fun"],["py", "4", "good"], ["python"]] print("名单是:") print(my_list) my_list.sort(key=total_characters) print("结果是:") print(my_list)输出结果
名单是: [['pyt', 'is', 'fun'], ['python', 'fun'], ['py', '4', 'good'], ['python']] 结果是: [['python'], ['py', '4', 'good'], ['pyt', 'is', 'fun'], ['python', 'fun']]
解释
定义了一个名为“total_characters”的方法,它以行作为参数,并返回元素的总和作为输出。
这是通过使用列表理解迭代元素并获取每个元素的长度并添加这些长度来完成的。
在该方法之外,定义了一个列表并显示在控制台上。
对列表进行排序并通过传递所需的参数来调用该方法。
这个结果被分配给一个变量。
这是显示在控制台上的输出。