Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Mengeluarkan Pendua dengan Cekap dari Senarai dalam Python Semasa Mengekalkan atau Mengabaikan Pesanan?

Bagaimanakah Saya Boleh Mengeluarkan Pendua dengan Cekap dari Senarai dalam Python Semasa Mengekalkan atau Mengabaikan Pesanan?

DDD
Lepaskan: 2024-12-20 15:26:14
asal
664 orang telah melayarinya

How Can I Efficiently Remove Duplicates from a List in Python While Maintaining or Ignoring Order?

Mengalih Keluar Pendua dalam Senarai

Mengenal pasti dan menghapuskan elemen pendua daripada senarai ialah tugas asas dalam pengaturcaraan. Artikel ini meneroka pelbagai kaedah untuk mencapai matlamat ini, dengan mengambil kira pemeliharaan ketenteraman dan kecekapan penyelesaian.

Menggunakan Set untuk Penyingkiran Penduaan yang Cekap

Sebuah yang mudah dan cekap pendekatan untuk mengalih keluar pendua daripada senarai ialah menukarnya kepada set. Menetapkan koleksi tersusun semula elemen unik. Dengan menukar senarai kepada set, semua pendua dialih keluar secara automatik. Untuk mencipta semula senarai tanpa pendua, set yang diubah suai boleh ditukar kembali kepada senarai menggunakan fungsi list().

Pertimbangkan contoh di bawah:

t = [1, 2, 3, 1, 2, 3, 5, 6, 7, 8]
unique_list = list(set(t))
Salin selepas log masuk

Hasilnya, unique_list, akan jadi [1, 2, 3, 5, 6, 7, 8], dengan semua pendua dialih keluar.

Memelihara Perintah dengan OrderedDict atau Kamus

Jika mengekalkan susunan asal unsur adalah penting, set tidak boleh digunakan kerana ia adalah koleksi tidak tertib. Sebaliknya, seseorang boleh bergantung pada OrderedDict atau kamus untuk mengekalkan susunan sisipan.

Menggunakan OrderedDict:

from collections import OrderedDict
ordered_unique_list = list(OrderedDict.fromkeys(t))
Salin selepas log masuk

Menggunakan kamus (Python 3.7 atau lebih baru):

unique_list = list(dict.fromkeys(t))
Salin selepas log masuk

Kedua-dua pendekatan mengembalikan senarai dengan pendua dialih keluar sambil mengekalkan yang asal pesanan.

Pertimbangan Prestasi

Menukar senarai kepada set dan kembali kepada senarai adalah cekap, tetapi ia mungkin memperkenalkan overhed tambahan. Jika pesanan itu tidak penting, menggunakan set biasanya lebih disukai kerana kelajuan dan kepelbagaiannya. Walau bagaimanapun, jika pesanan mesti dikekalkan, pendekatan OrderedDict atau kamus menyediakan pilihan yang berdaya maju.

Mengendalikan Item Tidak Boleh Hash

Perhatikan bahawa set, OrderedDict dan penyelesaian kamus memerlukan elemen dalam senarai boleh dicincang. Untuk elemen tidak boleh cincang (cth., senarai), pendekatan yang lebih perlahan menggunakan gelung bersarang diperlukan untuk membandingkan setiap elemen dengan setiap elemen lain.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Pendua dengan Cekap dari Senarai dalam Python Semasa Mengekalkan atau Mengabaikan Pesanan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan