Tôi có n danh sách số. Tôi muốn đảm bảo rằng mỗi danh sách chứa các phần tử duy nhất cho danh sách cụ thể đó. I E. Không có bản sao "được chia sẻ" trên bất kỳ phần nào còn lại.
Điều này thực sự dễ dàng thực hiện với hai danh sách, nhưng một chút phức tạp hơn với danh sách n.Cách sạch nhất để xóa các phần tử danh sách chung trên nhiều danh sách trong python
e.g.
mylist = [
[1, 2, 3, 4],
[2, 5, 6, 7],
[4, 2, 8, 9]
]
trở thành:
mylist = [
[1, 3],
[5, 6, 7],
[8, 9]
]
Tại sao 2 không nằm trong một trong ba danh sách, trong khi 4 không có trong danh sách đầu tiên? –
Bạn có quan tâm nếu trật tự được bảo quản? – wim
Sử dụng túi ('default_dict') để tạo danh sách" đã xem ". Thay thế mỗi danh sách của 'mylist' (tôi sẽ gọi nó là' sublist') với một trình tạo tìm kiếm 'matches': nếu tìm thấy, không bao gồm nó trong' sublist' cuối cùng. Nếu không tìm thấy, thêm nó vào túi. – Droogans