Khi cần nhóm phần tử danh sách thành ma trận, dùng vòng lặp đơn giản, phương thức pop, list comprehension và append.
Ví dụ
Minh họa dưới đây:
my_list = [[14, 62], [51, 23], [12, 62], [78, 87], [41, 14]]
print("Danh sách là:")
print(my_list)
check_list = [14, 12, 41, 62]
print("Danh sách kiểm tra là:")
print(check_list)
my_result = []
while my_list:
sub_list_1 = my_list.pop()
sub_list_2 = [element for element in check_list if element not in sub_list_1]
try:
my_list.remove(sub_list_2)
my_result.append([sub_list_1, sub_list_2])
except ValueError:
my_result.append(sub_list_1)
print("Kết quả là:")
print(my_result)
Kết quả
Danh sách là: [[14, 62], [51, 23], [12, 62], [78, 87], [41, 14]] Danh sách kiểm tra là: [14, 12, 41, 62] Kết quả là: [[[41, 14], [12, 62]], [78, 87], [51, 23], [14, 62]]
Giải thích
- Định nghĩa danh sách lồng nhau số nguyên và hiển thị ra console.
- Định nghĩa danh sách số nguyên khác và hiển thị ra console.
- Định nghĩa danh sách rỗng.
- Dùng vòng lặp đơn giản, lấy phần tử đầu (pop) gán vào
sub_list_1. - Dùng list comprehension lặp qua danh sách thứ hai, kiểm tra phần tử không có trong
sub_list_1. - Dùng khối
tryvàexceptđể thêm phần tử cụ thể vào danh sách rỗng. - List này hiển thị là đầu ra trên console.