


Bagaimana cara menggunakan set python untuk data unik?
Artikel ini menerangkan set Python, struktur data untuk menyimpan elemen unik. Butirannya menetapkan penciptaan, menambah/mengeluarkan elemen, menetapkan operasi (kesatuan, persimpangan, dll), dan penggunaannya yang cekap dalam pembersihan data (penyingkiran pendua, mengenal pasti
Bagaimana cara menggunakan set python untuk data unik?
Set Python adalah struktur data yang kuat yang direka khusus untuk menyimpan unsur -unsur yang unik. Tidak seperti senarai atau tupel, set tidak membenarkan nilai pendua. Ini menjadikan mereka sangat berguna untuk tugas -tugas yang melibatkan pengenalan data yang unik dan manipulasi. Inilah cara menggunakannya:
Creating a Set: You can create a set using curly braces {}
or the set()
constructor. Contohnya:
<code class="python"># Using curly braces my_set = {1, 2, 3, 3, 4, 5} # Duplicates are automatically removed print(my_set) # Output: {1, 2, 3, 4, 5} # Using the set() constructor my_list = [1, 2, 2, 3, 4, 4, 5] my_set = set(my_list) print(my_set) # Output: {1, 2, 3, 4, 5}</code>
Menambah dan mengeluarkan Elemen: Anda boleh menambah elemen menggunakan kaedah add()
dan mengeluarkan elemen menggunakan kaedah remove()
atau discard()
. remove()
menimbulkan KeyError
jika elemen tidak dijumpai, sementara discard()
tidak.
<code class="python">my_set.add(6) print(my_set) # Output: {1, 2, 3, 4, 5, 6} my_set.remove(3) print(my_set) # Output: {1, 2, 4, 5, 6} my_set.discard(7) # No error even though 7 is not present print(my_set) # Output: {1, 2, 4, 5, 6}</code>
Tetapkan Operasi: Set Python menyokong pelbagai operasi set matematik seperti kesatuan ( |
), persimpangan ( &
), perbezaan ( -
), dan perbezaan simetri ( ^
). Ini sangat berkesan untuk tugas -tugas seperti mencari unsur -unsur biasa atau elemen unik antara set.
<code class="python">set1 = {1, 2, 3} set2 = {3, 4, 5} union_set = set1 | set2 # or set1.union(set2) print(union_set) # Output: {1, 2, 3, 4, 5} intersection_set = set1 & set2 # or set1.intersection(set2) print(intersection_set) # Output: {3} difference_set = set1 - set2 # or set1.difference(set2) print(difference_set) # Output: {1, 2} symmetric_difference_set = set1 ^ set2 # or set1.symmetric_difference(set2) print(symmetric_difference_set) # Output: {1, 2, 4, 5}</code>
Apakah kes penggunaan biasa untuk set python dalam pembersihan data?
Set Python tidak ternilai dalam pembersihan data kerana keupayaan mereka untuk mengendalikan nilai unik dengan cekap. Berikut adalah beberapa kes penggunaan biasa:
- Mengeluarkan Duplikat: Ini adalah aplikasi yang paling mudah. Menukar senarai atau urutan lain ke set secara automatik menghilangkan pendua.
- Mengenal pasti nilai -nilai yang unik: Set membolehkan anda dengan cepat menentukan unsur -unsur unik yang terdapat dalam dataset, memberikan pandangan tentang komposisi data.
- Mencari nilai yang hilang: Dengan membandingkan set yang mewakili nilai yang dijangkakan dan nilai yang diperhatikan, anda boleh mengenal pasti mata data yang hilang dengan mudah.
- Membandingkan dataset: Set memudahkan perbandingan antara dataset, mendedahkan elemen umum, elemen unik untuk setiap dataset, dan unsur -unsur yang ada dalam satu tetapi bukan yang lain.
- Deduplication Data: Dalam dataset yang lebih besar, set boleh digunakan untuk mengenal pasti dan mengalih keluar rekod pendua berdasarkan bidang kunci tertentu.
Seberapa cekap set python berbanding dengan struktur data lain untuk mencari elemen yang unik?
Set Python sangat berkesan untuk mencari elemen unik berbanding dengan struktur data lain seperti senarai atau kamus. Kecekapan ini berpunca daripada pelaksanaan asas mereka menggunakan jadual hash.
- Masa carian: Memeriksa kewujudan elemen dalam satu set mempunyai kerumitan masa purata O (1) (masa malar), yang bermaksud masa yang diambil tidak meningkat dengan ketara dengan saiz set. Senarai, sebaliknya, memerlukan O (n) (masa linear) untuk mencari.
- Waktu penyisipan: Menambah elemen ke set juga mengambil O (1) secara purata. Memasukkan ke dalam senarai mengambil O (n) dalam kes yang paling teruk (jika anda perlu memasukkan pada awal).
- Penggunaan Memori: Walaupun set boleh menggunakan lebih banyak memori daripada senarai untuk dataset kecil, kecekapan mereka dalam dataset yang besar menjadikan mereka lebih cekap memori secara keseluruhan untuk pengenalan elemen yang unik.
Bolehkah saya menggunakan set python dengan jenis data yang berbeza secara serentak?
Tidak, anda tidak boleh menggunakan set python secara langsung dengan jenis data yang tidak berubah secara serentak. Satu set mesti mengandungi unsur -unsur jenis yang tidak berubah yang sama. Sekatan ini disebabkan oleh bagaimana jadual hash berfungsi secara dalaman. Fungsi hash memerlukan cara yang konsisten untuk memetakan unsur -unsur ke lokasi mereka dalam jadual hash, dan konsistensi ini lebih mudah untuk memastikan apabila unsur -unsur adalah jenis yang tidak berubah (seperti integer, rentetan, tuples struktur yang sama). Cuba untuk mencampurkan jenis yang tidak berubah yang berbeza akan menghasilkan TypeError
.
Walau bagaimanapun, anda boleh menggunakan set tuple jika anda perlu menyimpan koleksi jenis data yang berbeza bersama -sama. Contohnya:
<code class="python">my_set = {(1, 'a'), (2, 'b'), (3, 'c')} # This is allowed.</code>
Dalam kes ini, setiap elemen dalam set adalah tuple, mengekalkan konsistensi jenis dalam set. Anda tidak boleh mencampur tuples dengan bilangan bulat secara langsung dalam set yang sama.
Atas ialah kandungan terperinci Bagaimana cara menggunakan set python untuk data unik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Penyelesaian kepada Isu Kebenaran Semasa Melihat Versi Python di Terminal Linux Apabila anda cuba melihat versi Python di Terminal Linux, masukkan Python ...

Cara mengelakkan dikesan semasa menggunakan fiddlerevery di mana untuk bacaan lelaki-dalam-pertengahan apabila anda menggunakan fiddlerevery di mana ...

Apabila menggunakan Perpustakaan Pandas Python, bagaimana untuk menyalin seluruh lajur antara dua data data dengan struktur yang berbeza adalah masalah biasa. Katakan kita mempunyai dua DAT ...

Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam masa 10 jam? Sekiranya anda hanya mempunyai 10 jam untuk mengajar pemula komputer beberapa pengetahuan pengaturcaraan, apa yang akan anda pilih untuk mengajar ...

Bagaimanakah Uvicorn terus mendengar permintaan HTTP? Uvicorn adalah pelayan web ringan berdasarkan ASGI. Salah satu fungsi terasnya ialah mendengar permintaan HTTP dan teruskan ...

Fastapi ...

Menggunakan Python di Terminal Linux ...

Memahami Strategi Anti-Crawling of Investing.com Ramai orang sering cuba merangkak data berita dari Investing.com (https://cn.investing.com/news/latest-news) ...
