Set Python adalah literal unik untuk memfilter nilai yang berbeda dalam daftar atau larik item. Tidak seperti daftar Python, kamus, atau tupel, ia tidak menerima duplikat. Sehingga bisa menjadi alat pembersih data yang berharga.
Tapi bagaimana Anda bisa membuat satu set dan menggunakannya dengan Python? Kami akan menjelaskannya di posting ini.
Fitur Set Python
Selain tidak menerima duplikat, himpunan literal memiliki karakteristik lain yang membedakannya dari tipe data lainnya. Berikut beberapa fiturnya:
- Ini tidak dapat diubah: itu berarti Anda tidak dapat mengubah nilai satu set setelah Anda membuatnya.
- Himpunan literal mengembalikan pengaturan dinamis setiap kali Anda membuatnya. Intinya, item dalam satu set tidak berurutan.
- Karena menyajikan item tidak berurutan, tidak seperti daftar dan literal kamus, Anda tidak bisa mendapatkan nilai dari satu set dengan indeksnya.
Cara Membuat dan Menggunakan Set Python
Sekarang Anda telah mengetahui fitur dasar dari set Python. Mari kita lihat beberapa cara Anda dapat menggunakannya dalam program Anda.
Anda menggunakan tanda kurung kurawal untuk membuat satu set dengan Python. Jadi satu set adalah daftar item dalam kurung kurawal dipisahkan dengan koma:
mySet = {1, 2, "MUO", "Google"}
cetak (mySet)
Keluaran: {1, 2, "MUO", "Google"}
Anda juga dapat mengonversi tipe data lain menjadi kumpulan. Misalnya, kode di bawah ini mengubah daftar menjadi satu set:
myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
cetak (mySet)
Keluaran: {1, 2, "MUO", "Google"}
Untuk memastikannya, Anda bisa mengecek tipe datanya mySet:
myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
cetak (tipe (mySet))
Keluaran:
Seperti yang kami sebutkan sebelumnya, satu set tidak menerima duplikat. Fitur tersebut dapat berguna saat Anda ingin membersihkan array dengan menghapus nilai duplikat.
Kode di bawah ini menghapus duplikat dalam daftar dan menampilkan hasilnya sebagai set Python:
myList = [1, 2, 2 "MUO", "MUO", "Google", "Google"]
mySet = set (myList)
cetak (mySet)
Keluaran: {1, 2, 'MUO', 'Google'}
Untuk mendemonstrasikan fitur pemfilteran dari satu set lebih lanjut, saat Anda mencetak panjang set, itu tidak menghitung nilai duplikat:
mySet = {1, 2, 2, "MUO", "MUO", "Google", "Google"}
cetak (len (mySet))
Hasil: 4
Untuk melihat kasus penggunaan yang lebih baik dari satu set, mari kita hapus duplikat dalam larik berikut. Ini seperti menanyakan kunci unik dalam sebuah array.
Untuk melakukan ini, ubah kamus menjadi satu set:
myDiction = {
"Mango": 2, "Orange": 2, "carrot": 2, "MUO": "tech",
"MUO": "web", "Google": "search", "Google": "engine"
}
uniqueSet = set (myDiction)
print ("Ini adalah kunci unik: {}". format (uniqueSet))
Hasil: Ini adalah kunci unik: {'Google', 'Mango', 'MUO', 'Orange', 'carrot'}
Konversi di atas secara otomatis menghapus item duplikat dari larik.
Anda dapat mengubah kode di atas menggunakan for loop untuk membuatnya lebih jelas:
untuk keunikan di uniqueSet:
cetak (unik)
Anda juga dapat menggabungkan dua set dengan Persatuan() metode:
setA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA.union (setB)
cetak (newSet)
Keluaran: {1, 3, 4, 5, 6}
Namun, kode di atas menggabungkan dua set dan menghapus nilai duplikat.
Alternatifnya, Anda bisa menggunakan pipa | fungsi untuk menggabungkan set dengan Python:
setA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA | setB
cetak (newSet)
Keluaran: {1, 3, 4, 5, 6}
Anda juga dapat menemukan perbedaan antara dua set dengan Python:
setA = {1, 3, 5}
setB = {2, 4, 5,}
cetak (setA.difference (setB))
Keluaran: {1, 3}
Anda dapat menemukan perbedaan simetris antara himpunan A dan B. Metode ini mengembalikan item di salah satu set tetapi mengecualikan perpotongannya. Mari kita lihat cara kerjanya:
setA = {1, 3, 5}
setB = {2, 4, 5,}
cetak (setA ^ setB)
Keluaran: {1, 2, 3, 4}
Atau, Anda dapat menggunakan Simetris_diferensiasi () metode:
setA = {1, 3, 5}
setB = {2, 4, 5,}
cetak (setA.symmetric_difference (setB))
Keluaran: {1, 2, 3, 4}
Mari kita lihat juga bagaimana Anda bisa menemukan perpotongan set di bawah ini:
setA = {1, 3, 5}
setB = {1, 4, 6}
setC = {1, 5, 4}
newSet = setA.intersection (setB, setC)
cetak (newSet)
Keluaran: {1}
Selagi Anda bisa menambahkan ke daftar dengan Python, Anda tidak dapat melakukan hal yang sama untuk set Python. Namun, Anda dapat menambahkan item ke akhir rangkaian menggunakan Menambahkan fungsi.
Tapi Python Menambahkan fungsi menerima satu argumen, jadi Anda hanya bisa menambahkan tupel ke satu set. Ini mengembalikan set bersarang:
setA = {1, 3, 5} setC = {1, 3}
newSet = 1, 6
setC.add (newSet)
cetak (setC)
Keluaran: {1, (1, 6), 3}
Set Python menggunakan isdisjoint () metode untuk memeriksa apakah dua set terputus-putus. Ini kemudian mengembalikan Boolean:
setA = {1, 3, 5}
setB = {1, 4, 6}
findDisjoint = setA.isdisjoint (setB)
print ("Ini {} setA itu adalah disjoint dari B" .format (findDisjoint))
Output: Salah bahwa setA adalah pemutusan dari B
Untuk memeriksa apakah satu set adalah himpunan bagian dari yang lain, ganti isdisjoint () dengan issubset ():
findSubset = setA.issubset (setB)
Anda dapat menghapus elemen dari set:
setA = {1, 3, 5}
setA.remove (5)
cetak (setA)
Keluaran: {1, 3}
Itu bersih() metode membersihkan elemen dalam satu set dan mengembalikan satu set kosong:
setA = {1, 3, 5}
setA.clear ()
cetak (setA)
Keluaran: set ()
Anda dapat menghapus item arbitrer dari satu set dan mengembalikan nilainya menggunakan set.pop () metode:
setA = {1, 3, 5}
cetak (setA.pop ())
Anda juga bisa memperbarui set Python dengan metode update ():
setA = {1, 'b'}
setB = {2, 4, 5,}
cetak (setA.update (setB))
cetak (setA)
Keluaran: {1, 2, 4, 5, 'b'}
Bermain-main Dengan Set Python
Meskipun kita telah melihat bagaimana Anda dapat menggunakan satu set dengan Python, masih ada cara praktis lain untuk menerapkannya dalam kode Anda. Seperti yang Anda lihat, ini bahkan bisa berguna saat membersihkan data dengan Python.
Selain satu set, tipe data atau array Python lainnya memiliki banyak kegunaan dan berbagai aplikasi. Cobalah untuk bermain-main dengan mereka agar lebih mengenal mereka.
Array dan daftar adalah beberapa struktur data yang paling berguna dalam pemrograman - meskipun hanya sedikit orang yang menggunakannya secara maksimal.
Baca Selanjutnya
- Pemrograman
- Python
Idowu sangat tertarik dengan teknologi pintar dan produktivitas apa pun. Di waktu luangnya, dia bermain-main dengan coding dan beralih ke papan catur ketika dia bosan, tetapi dia juga suka melepaskan diri dari rutinitas sesekali. Semangatnya untuk menunjukkan kepada orang-orang tentang teknologi modern memotivasinya untuk menulis lebih banyak.
Berlangganan newsletter kami
Bergabunglah dengan buletin kami untuk mendapatkan tip teknologi, ulasan, ebook gratis, dan penawaran eksklusif!
Satu langkah lagi…!
Harap konfirmasi alamat email Anda di email yang baru saja kami kirimkan kepada Anda.