Khi cần lấy phần tử cuối (cột cuối) của từng hàng trong ma trận các hàng độ dài khác nhau, ta dùng vòng lặp, append() và chỉ số âm (-1).
Ví dụ
my_list = [[41, 65, 25], [45, 89], [12, 65, 75, 36, 58], [49, 12, 36, 98], [47, 69, 78]]
print("Ma trận gốc:")
print(my_list)
print("Sau sắp xếp:")
my_list.sort()
print(my_list)
my_result = []
for sub_list in my_list:
my_result.append(sub_list[-1])
print("Cột cuối (phần tử cuối mỗi hàng):")
print(my_result)
print("Sau sắp xếp kết quả:")
my_result.sort()
print(my_result)
Kết quả đầu ra
Ma trận gốc: [[41, 65, 25], [45, 89], [12, 65, 75, 36, 58], [49, 12, 36, 98], [47, 69, 78]] Sau sắp xếp: [[12, 65, 75, 36, 58], [41, 65, 25], [45, 89], [47, 69, 78], [49, 12, 36, 98]] Cột cuối (phần tử cuối mỗi hàng): [58, 25, 89, 78, 98] Sau sắp xếp kết quả: [25, 58, 78, 89, 98]
Giải thích
- Ma trận "đa kích thước" = list các list độ dài khác nhau.
sub_list[-1]lấy phần tử cuối của mỗi hàng con.- Sắp xếp ma trận trước khi lấy (tùy chọn) thay đổi thứ tự hàng.
List comprehension: [row[-1] for row in my_list].