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("名单是:") print(my_list) my_list.sort(key=get_palindrome_count) print("结果列表是:") print(my_list)输出结果
名单是: [['abcba', 'hdgfue', 'abc'], ['peep'], ['py', 'is', 'best'], ['sees', 'level', 'non', 'noon']] 结果列表是: [['py', 'is', 'best'], ['abcba', 'hdgfue', 'abc'], ['peep'], ['sees', 'level', 'non', 'noon']]
解释
定义了一个名为“get_palindrome_count”的方法,它将列表作为参数。
列表推导用于遍历列表并查看元素是否为回文。
如果是,则返回。
在该方法之外,一个带有字符串值的列表被定义并显示在控制台上。
'sort'方法用于根据键是先前定义的方法对列表进行排序。
这在te控制台上显示为输出。