Python - Latihan Set
Helo di sana, para penyihir Python masa depan! Hari ini, kita akan melompat ke atas dunia penyihirannya tentang set Python. Jangan khawatir jika anda belum pernah mengkod sebelum ini – saya akan menjadi pemandu anda yang mesra pada perjalanan yang menarik ini. Pada akhir tutorial ini, anda akan dapat menjahit set seperti seorang pro!
Apa itu Set?
Sebelum kita melompat ke atas latihan kita, mari fahami dengan cepat apa itu set di Python. Bayangkan anda memiliki rak rakit, tetapi setiap rakit hanya boleh muncul sekali di atas rak itu. Itu hampir sama dengan apa itu set di Python – sebuah koleksi item yang unik.
Set adalah tak berurut, yang berarti item tidak memiliki posisi khusus. Mereka juga dapat diubah, jadi kita boleh menambah atau menghapus item. Walau bagaimanpun, item itu sendiri mestilah tidak dapat diubah (seperti angka atau rentetan, bukan senarai).
Sekarang, mari kita kunci lengan kita dan mulakan untuk mengkod!
Latihan Set Python 1: Membuat dan Mengurus Set
Membuat Set
Mari kita mulakan dengan membuat set sederhana:
buah = {"apel", "pisang", "ceri"}
print(buah)
Apabila anda menjalankan kod ini, anda akan lihat:
{'ceri', 'pisang', 'apel'}
Perhatikan bagaimana urutan mungkin berbeza daripada apa yang kita masukkan? Itu kerana set adalah tak berurut!
Menambah Item ke Set
Sekarang, mari kita tambahkan beberapa buah lagi ke set kita:
buah.add("buah naga")
print(buah)
buah.update(["elderberry", "fig"])
print(buah)
Output:
{'ceri', 'pisang', 'apel', 'buah naga'}
{'fig', 'ceri', 'pisang', 'elderberry', 'apel', 'buah naga'}
Lihat bagaimana kita menggunakan add()
untuk item tunggal dan update()
untuk beberapa item? Ia seperti menambah satu rakit ke rak rakit anda versus untuk menyemprotkan sebanyak banyak rakit!
Menghapus Item dari Set
Mari kita hapus beberapa buah:
buah.remove("pisang")
print(buah)
buah.discard("anggur") # Ini tidak akan memunculkan ralat walaupun "anggur" tidak di set
print(buah)
Output:
{'fig', 'ceri', 'elderberry', 'apel', 'buah naga'}
{'fig', 'ceri', 'elderberry', 'apel', 'buah naga'}
remove()
akan memunculkan ralat jika item tidak wujud, sementara discard()
tidak. Ia seperti memilih rakit dengan hati-hati daripada untuk mencari rakit untuk dihapus secara santai.
Latihan Set Python 2: Operasi Set
Sekarang kita telah menguasai asas, mari kita main dengan beberapa set!
Gabungan Set
Bayangkan anda dan rakan anda keduanya memiliki rak rakit. Gabungan adalah semua rakit unik yang anda miliki bersama-sama.
set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6, 7, 8}
gabungan_set = set1.union(set2)
print(gabungan_set)
Output:
{1, 2, 3, 4, 5, 6, 7, 8}
Pertalian Set
Pertalian adalah rakit yang keduanya miliki bersama.
pertalian_set = set1.intersection(set2)
print(pertalian_set)
Output:
{4, 5}
Perbezaan Set
Perbezaan adalah rakit yang anda miliki tetapi rakan anda tidak.
perbezaan_set = set1.difference(set2)
print(perbezaan_set)
Output:
{1, 2, 3}
Latihan Set Python 3: Operasi Set Lanjutan
Bersedia untuk meningkatkan level? Mari kita tangani beberapa operasi lanjutan!
Perbezaan Simetrik
Ini memberikan kita semua rakit yang ada di atas set, tetapi tidak di atas kedua-duanya.
perbezaan_simetrik = set1.symmetric_difference(set2)
print(perbezaan_simetrik)
Output:
{1, 2, 3, 6, 7, 8}
Subset dan Superset
Mari kita periksa jika satu set berada di atas set lain:
set3 = {1, 2, 3}
print(set3.issubset(set1)) # Adakah set3 adalah subset bagi set1?
print(set1.issuperset(set3)) # Adakah set1 adalah superset bagi set3?
Output:
True
True
Ia seperti memeriksa jika semua rakit anda juga berada di atas rak rakit rakan anda yang lebih besar!
Set Beku
Ada kalanya, kita perlu set yang tidak boleh diubah. Masukkan set beku:
buah_beku = frozenset(["apel", "pisang", "ceri"])
print(buah_beku)
# Ini akan memunculkan ralat:
# buah_beku.add("buah naga")
Output:
frozenset({'ceri', 'pisang', 'apel'})
Pikirkan set beku sebagai rak rakit yang dikukus di atas es – anda boleh melihat, tetapi anda tidak boleh menyentuh!
Ringkasan Methode Set
Berikut adalah rakam methode set yang kita telah pelajari:
Method | Keterangan |
---|---|
add() | Menambah elemen kepada set |
update() | Mengupdate set dengan elemen dari set atau iterable lain |
remove() | Menghapus elemen yang dinyatakan (memunculkan ralat jika tidak ditemui) |
discard() | Menghapus elemen yang dinyatakan (tidak memunculkan ralat jika tidak ditemui) |
union() | Mengembalikan set yang mengandung gabungan set |
intersection() | Mengembalikan set yang mengandung pertalian set |
difference() | Mengembalikan set yang mengandung perbezaan antara set |
symmetric_difference() | Mengembalikan set dengan elemen di atas set, tetapi bukannya kedua-duanya |
issubset() | Memeriksa jika set adalah subset bagi set lain |
issuperset() | Memeriksa jika set adalah superset bagi set lain |
Dan itu untuk anda, rakyat! Anda baru saja meningkatkan skill Python anda dengan set. Ingat, praktek membuat perfect, jadi terus main dengan konsep ini. Sebelum anda tahu, anda akan dapat mengurus set seperti seorang penyihir Python yang sebenar!
Credits: Image by storyset