Penghapus Duplikat Array Python

Filter item duplikat dari daftar Python sambil mempertahankan urutan penyisipan aslinya.

Coba di Editor

Ikhtisar

Menghapus duplikat adalah salah satu operasi pembersihan data yang paling umum dalam perangkat lunak.

Mentransmisikan daftar ke suatu himpunan (`set(arr)`) menghilangkan duplikat tetapi menghancurkan urutan elemen karena himpunan tidak berurutan.

Untuk menghapus duplikat sambil mempertahankan urutannya, kami mengulangi daftar dan melacak elemen yang terlihat dalam satu set, menambahkan elemen baru ke daftar hasil.

Kode & Output Eksekusi

Akumulator elemen unik yang mempertahankan pesanan O(n) yang efisien.

remove_duplicates.py
Coba di Editor
def remove_duplicates(arr):
    seen = set()
    result = []
    for item in arr:
        if item not in seen:
            seen.add(item)
            result.append(item)
    return result

sample_list = [1, 2, 2, 3, 4, 4, 1, 5]
print("Original:", sample_list)
print("Unique:  ", remove_duplicates(sample_list))
Keluaran Terminal
Original: [1, 2, 2, 3, 4, 4, 1, 5]
Unique:   [1, 2, 3, 4, 5]

Implementasi Langkah demi Langkah

  • Membersihkan riwayat pencarian dan log catatan transaksi
  • Mempersiapkan daftar kunci data unik untuk kueri SQL
  • Membersihkan array untuk pemetaan visualisasi

Pertanyaan yang Sering Diajukan

Apa cara tercepat untuk melakukan ini diPython 3.7+?

KarenaPython 3.7+ mempertahankan urutan penyisipan kamus, Anda dapat menjalankan `list(dict.fromkeys(arr))` untuk menghapus duplikat sambil menjaga urutan dalam satu langkah yang dioptimalkan.

Topik Terkait