Computer >> Máy Tính >  >> Lập trình >> Python

Python - Sắp xếp ma trận theo số lượng Palindrome

Khi được yêu cầu sắp xếp ma trận dựa trên số lượng palindrome, một phương thức được xác định lấy danh sách làm tham số. Nó sử dụng khả năng hiểu danh sách và phương thức ‘nối’ để lặp lại và xem liệu một phần tử có phải là palindrome hay không. Dựa trên điều này, kết quả được xác định và hiển thị.

Ví dụ

Dưới đây là một minh chứng về điều tương tự

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)

Đầu ra

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']]

Giải thích

  • Một phương thức có tên là ‘get_palindrome_count’ được xác định sẽ nhận một danh sách làm tham số.

  • Khả năng hiểu danh sách được sử dụng để lặp lại danh sách và xem liệu phần tử có phải là palindrome hay không.

  • Nếu có, nó sẽ được trả lại.

  • Bên ngoài phương thức, một danh sách gồm các giá trị chuỗi được xác định và hiển thị trên bảng điều khiển.

  • Phương thức "sort" được sử dụng để sắp xếp danh sách dựa trên khóa là phương thức đã xác định trước đó.

  • Điều này được hiển thị dưới dạng đầu ra trên bảng điều khiển te.