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”方法用于根据前面定义的方法作为键对列表进行排序。

  • 这在控制台上显示为输出。

更新日期:2021-09-14

164 次浏览

职业生涯跃升一大步

完成课程,通过认证

立即开始
广告