Python——按回文数量对矩阵排序
如果需要根据回文数量对矩阵进行排序,则定义一个以列表为参数的方法。它使用列表解析和“join”方法进行迭代,并判断一个元素是否是回文。基于此,确定并显示结果。
范例
下面是一个演示
def get_palindrome_count(row): return len([element for element in row if''.join(list(reversed(element))) == element]) my_list = [["abcba", "hdgfue", "abc"], ["peep"],["py", "is", "best"],["sees", "level", "non", "noon"]] print("The list is :") print(my_list) my_list.sort(key=get_palindrome_count) print("The resultant list is :") print(my_list)
输出
The list is : [['abcba', 'hdgfue', 'abc'], ['peep'], ['py', 'is', 'best'], ['sees', 'level', 'non', 'noon']] The resultant list is : [['py', 'is', 'best'], ['abcba', 'hdgfue', 'abc'], ['peep'], ['sees', 'level', 'non', 'noon']]
说明
定义了名为“get_palindrome_count”的方法,该方法以列表作为参数。
列表解析用于迭代列表,并判断元素是否是回文。
如果是,则返回。
在方法外部,定义了一个包含字符串值之列表的列表,并将其显示在控制台上。
“sort”方法用于根据前面定义的方法作为键对列表进行排序。
这在控制台上显示为输出。
广告