Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Python

Cara Menghapus Elemen Duplikat dari Daftar Python

Daftar adalah struktur data dasar Python yang menyimpan koleksi terurut item seperti bilangan bulat, string, atau objek kustom. Ini adalah setara Python dengan array dalam bahasa lainnya.

Berikut adalah teknik yang teruji untuk menghapus elemen duplikat dari daftar sambil mempertahankan urutan dan keterbacaan.

Hapus duplikat menggunakan set

Fungsi bawaan set() Python menghapus duplikat dengan mengembalikan hanya elemen unik. Konversi daftar ke set, lalu kembali ke daftar untuk mempertahankan format koleksi.

my_list = [1,1,2,3,2,2,4,5,6,2,1] my_final_list = set(my_list) print(list(my_final_list))

Output:

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

Hapus duplikat menggunakan daftar sementara

Pendekatan ini membuat daftar kosong, mengulang daftar asli, dan menambahkan hanya item yang belum pernah dilihat sebelumnya.

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)

Output:

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

Hapus duplikat menggunakan OrderedDict (atau dict.fromkeys)

Untuk Python 3.5+, dict biasa mempertahankan urutan penyisipan, jadi dict.fromkeys() dapat digunakan untuk menjaga nilai unik dalam urutan.

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

Output:

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

Hapus duplikat dengan loop for sederhana

Telusuri daftar, tambahkan item ke daftar baru hanya jika belum muncul sebelumnya.

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(myFinallist)

Output:

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

Hapus duplikat melalui list comprehension

List comprehensions menawarkan sintaks ringkas sambil mempertahankan keterbacaan.

my_list = [1,2,2,3,1,4,5,1,2,6] my_finallist = [] [my_finallist.append(n) for n in my_list if n not in my_finallist] print(my_finallist)

Output:

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

Hapus duplikat dengan NumPy's unique()

Fungsi unique() NumPy mengembalikan elemen unik yang diurutkan dari array.

import numpy as np my_list = [1,2,2,3,1,4,5,1,2,6] myFinalList = np.unique(my_list).tolist() print(myFinalList)

Output:

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

Hapus duplikat menggunakan Pandas' unique()

Secara serupa, Pandas menawarkan metode unique() ringan yang bekerja pada objek seperti daftar.

import pandas as pd my_list = [1,2,2,3,1,4,5,1,2,6] myFinalList = pd.unique(my_list).tolist() print(myFinalList)

Output:

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

Hapus duplikat dengan enumerate() dan list comprehension

Menggabungkan enumerate() dengan list comprehension memungkinkan penghapusan duplikat sambil mempertahankan kemunculan pertama dari setiap elemen.

my_list = [1,2,2,3,1,4,5,1,2,6] my_finallist = [i for j, i in enumerate(my_list) if i not in my_list[:j]] print(my_finallist)

Output:

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

Ringkasan

Python

  1. Menguasai Tipe Data Python: Panduan Praktis
  2. Menguasai Operator Python: Panduan Komprehensif
  3. Menguasai Pernyataan Pass Python: Panduan Praktis
  4. Menguasai Argumen Fungsi Python: Posisi, Kata Kunci, dan Parameter Default
  5. Menguasai Fungsi range() Python: Dari Dasar hingga Kasus Lanjutan
  6. Menguasai Daftar Python: Append, Sort, Panjang & List Comprehensions (Panduan Praktis)
  7. Menghitung Rata-rata di Python: Panduan Praktis
  8. Python list.count(): Panduan Ahli dengan Contoh Praktis
  9. Cara Menghapus Item dari Daftar Python: remove(), pop(), clear(), dan del
  10. Python List index() – Cara Mencari Posisi Elemen dengan Contoh Praktis