Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python – Sắp xếp ma trận theo tổng số ký tự


Khi cần sắp xếp ma trận chuỗi theo tổng số ký tự của tất cả phần tử trong mỗi hàng, ta dùng hàm với list comprehension, sum() và len().

Ví dụ

def total_characters(row):
    return sum([len(element) for element in row])

my_list = [["pyt", "is", "fun"], ["python", "fun"], ["py", "4", "good"], ["python"]]
print("Danh sách ban đầu:")
print(my_list)
my_list.sort(key=total_characters)
print("Kết quả:")
print(my_list)

Kết quả

Danh sách ban đầu: [['pyt', 'is', 'fun'], ['python', 'fun'], ['py', '4', 'good'], ['python']]
Kết quả: [['python'], ['py', '4', 'good'], ['pyt', 'is', 'fun'], ['python', 'fun']]

Giải thích

  • Hàm total_characters tính tổng độ dài chuỗi của các phần tử trong hàng.

  • Định nghĩa ma trận chuỗi và hiển thị.

  • Sắp xếp với key=total_characters.

  • In ma trận đã sắp xếp theo tổng ký tự tăng dần.