Python thêm danh sách vào danh sách mà không trùng lặp

Để xóa các mục trùng lặp khỏi danh sách, bạn có thể sử dụng hàm tích hợp sẵn set[]. Điểm đặc biệt của phương thức set[] là nó trả về các phần tử riêng biệt

chúng tôi có một danh sách. [1,1,2,3,2,2,4,5,6,2,1]. Danh sách có nhiều phần trùng lặp mà chúng tôi cần xóa và chỉ lấy lại các phần tử riêng biệt. Danh sách được cung cấp cho hàm tích hợp set[]. Sau đó, danh sách cuối cùng được hiển thị bằng hàm tích hợp list[], như trong ví dụ bên dưới


Đầu ra mà chúng tôi nhận được là các phần tử riêng biệt trong đó tất cả các phần tử trùng lặp đều bị loại bỏ.
my_list = [1,1,2,3,2,2,4,5,6,2,1]
my_final_list = set[my_list]
print[list[my_final_list]]

đầu ra

[1, 2, 3, 4, 5, 6]

Xóa các bản sao khỏi danh sách bằng Danh sách tạm thời

Để xóa các mục trùng lặp khỏi danh sách đã cho, bạn có thể sử dụng danh sách tạm thời trống. Trước tiên, bạn sẽ phải duyệt qua danh sách có các mục trùng lặp và thêm các mục duy nhất vào danh sách tạm thời. Sau đó, danh sách tạm thời được gán cho danh sách chính

Đây là một ví dụ làm việc sử dụng danh sách tạm thời

my_list = [1, 2, 3, 1, 2, 4, 5, 4 ,6, 2]
print["List Before ", my_list]
temp_list = []

for i in my_list:
    if i not in temp_list:
        temp_list.append[i]

my_list = temp_list

print["List After removing duplicates ", my_list]

đầu ra

List Before  [1, 2, 3, 1, 2, 4, 5, 4, 6, 2]
List After removing duplicates  [1, 2, 3, 4, 5, 6]

Xóa các bản sao khỏi danh sách bằng Dict

Chúng tôi có thể xóa các mục trùng lặp khỏi danh sách đã cho bằng cách nhập OrderedDict từ các bộ sưu tập. Nó có sẵn từ python2. 7 trở đi. OrderedDict đảm nhiệm việc trả lại cho bạn các phần tử riêng biệt theo thứ tự có khóa

Hãy để chúng tôi sử dụng một danh sách và sử dụng phương thức fromkeys[] có sẵn trong OrderedDict để lấy các phần tử duy nhất từ ​​​​danh sách

Để sử dụng OrderedDict. fromkey[], bạn phải nhập OrderedDict từ các bộ sưu tập, như hình bên dưới

from collections import OrderedDict

Đây là một ví dụ để loại bỏ các bản sao bằng OrderedDict. phương thức fromkeys[]

from collections import OrderedDict

my_list = ['a','x','a','y','a','b','b','c']

my_final_list = OrderedDict.fromkeys[my_list]

print[list[my_final_list]]

đầu ra

['a', 'x', 'y', 'b', 'c']

Từ Python 3. 5+ trở đi, chúng ta có thể sử dụng dict thông thường. fromkeys[] để lấy các phần tử riêng biệt từ danh sách. mệnh lệnh. Phương thức fromkeys[] trả về các khóa duy nhất và giúp loại bỏ các giá trị trùng lặp

Một ví dụ cho thấy hoạt động của dict. fromkeys[] trong danh sách để cung cấp các mục duy nhất như sau

my_list = ['a','x','a','y','a','b','b','c']
my_final_list = dict.fromkeys[my_list]
print[list[my_final_list]]

đầu ra

['a', 'x', 'y', 'b', 'c']

Loại bỏ các bản sao khỏi danh sách bằng vòng lặp for

Sử dụng vòng lặp for, chúng tôi sẽ duyệt qua danh sách các mục để loại bỏ các mục trùng lặp

Đầu tiên khởi tạo mảng để trống i. e myFinallist = []. Bên trong vòng lặp for, thêm kiểm tra xem các mục trong danh sách có tồn tại trong mảng myFinallist không. Nếu các mục không tồn tại, hãy thêm mục đó vào mảng myFinallist bằng phương thức append[]

Vì vậy, bất cứ khi nào gặp phải mục trùng lặp, mục đó sẽ có sẵn trong mảng myFinallist và sẽ không được chèn vào. Bây giờ chúng ta hãy kiểm tra tương tự trong ví dụ dưới đây

my_list = [1,2,2,3,1,4,5,1,2,6]
myFinallist = []
for i in my_list:
    if i not in myFinallist:
myFinallist.append[i]
print[list[myFinallist]]

đầu ra

[1, 2, 3, 4, 5, 6]

Xóa các bản sao khỏi danh sách bằng cách sử dụng tính năng hiểu danh sách

Khả năng hiểu danh sách là các hàm Python được sử dụng để tạo các chuỗi mới [chẳng hạn như danh sách, từ điển, v.v. ] sử dụng các trình tự đã được tạo. Điều này giúp bạn giảm các vòng lặp dài hơn và giúp mã của bạn dễ đọc và dễ bảo trì hơn

Hãy để chúng tôi sử dụng khả năng hiểu danh sách để loại bỏ các bản sao khỏi danh sách đã cho

[1, 2, 3, 4, 5, 6]
1

đầu ra

[1, 2, 3, 4, 5, 6]

Xóa các bản sao khỏi danh sách bằng phương thức Numpy unique[]

Phương thức unique[] từ mô-đun Numpy có thể giúp chúng tôi xóa trùng lặp khỏi danh sách đã cho

Để làm việc với mô-đun numpy nhập đầu tiên của Numpy, bạn cần làm theo các bước sau

Bước 1] Nhập mô-đun Numpy

[1, 2, 3, 4, 5, 6]
3

Bước 2] Sử dụng danh sách của bạn với các bản sao bên trong phương thức duy nhất như bên dưới. Đầu ra được chuyển đổi trở lại định dạng danh sách bằng phương thức tolist[]

[1, 2, 3, 4, 5, 6]
4

Bước 3] Cuối cùng in danh sách như hình bên dưới

[1, 2, 3, 4, 5, 6]
5

Mã cuối cùng với đầu ra như sau

[1, 2, 3, 4, 5, 6]
6

đầu ra

[1, 2, 3, 4, 5, 6]

Xóa các mục trùng lặp khỏi danh sách bằng các phương pháp của Pandas

Mô-đun Pandas có một phương thức[] duy nhất sẽ cung cấp cho chúng ta các phần tử duy nhất từ ​​​​danh sách đã cho

Để làm việc với mô-đun Pandas, bạn cần làm theo các bước sau

Bước 1] Nhập mô-đun Pandas

[1, 2, 3, 4, 5, 6]
8

Bước 2] Sử dụng danh sách của bạn với các bản sao bên trong phương thức unique[] như hình bên dưới

[1, 2, 3, 4, 5, 6]
9

Bước 3] In danh sách như hình bên dưới

[1, 2, 3, 4, 5, 6]
5

Mã cuối cùng với đầu ra như sau

my_list = [1, 2, 3, 1, 2, 4, 5, 4 ,6, 2]
print["List Before ", my_list]
temp_list = []

for i in my_list:
    if i not in temp_list:
        temp_list.append[i]

my_list = temp_list

print["List After removing duplicates ", my_list]
1

đầu ra

[1, 2, 3, 4, 5, 6]

Xóa các bản sao bằng cách sử dụng liệt kê [] và hiểu danh sách

Ở đây sự kết hợp giữa hiểu danh sách và liệt kê để loại bỏ các phần tử trùng lặp. Liệt kê trả về một đối tượng có bộ đếm cho từng phần tử trong danh sách. Ví dụ: [0,1], [1,2], v.v. Ở đây, giá trị đầu tiên là chỉ mục và giá trị thứ hai là mục danh sách. W

Chủ Đề