Catatan

Breaking 484

Wednesday, July 1, 2026

Mengapa Menggunakan Set Lebih Baik daripada Menggunakan List

 

Praktik yang lebih baik  dalam Python ketika memeriksa apakah suatu nilai termasuk dalam sekumpulan data.

Cara pertama (menggunakan list)

if username in ["Gift", "John", "Ada", "Mike"]:
    print("Allowed")

Kode ini benar dan akan bekerja. Namun, Python harus memeriksa elemen satu per satu sampai menemukan yang cocok.

Ilustrasi:

"Gift" -> cek
"John" -> cek

"Ada"  -> cek

"Mike" -> cek

Semakin banyak data, semakin lama pencariannya.

 

Cara kedua (menggunakan set)

allowed_users = {"Gift", "John", "Ada", "Mike"}

if username in allowed_users:
    print("Allowed")

Ini adalah cara yang direkomendasikan bila Anda hanya ingin mengetahui apakah suatu nilai ada atau tidak.

Keuntungan:

  • Lebih cepat untuk data yang banyak.
  • Tidak ada data duplikat.
  • Kode lebih mudah dipahami.

 

Perbedaan List dan Set

List ([])

Set ({})

Berurutan

Tidak berurutan

Boleh ada data sama

Tidak boleh ada data sama

Lebih lambat untuk pencarian

Sangat cepat untuk pencarian

Bisa diakses dengan indeks

Tidak bisa memakai indeks

Contoh:

buah = ["Apel", "Jeruk", "Apel"]

print(buah)

Hasil:

['Apel', 'Jeruk', 'Apel']

Sedangkan:

buah = {"Apel", "Jeruk", "Apel"}

print(buah)

Hasil:

{'Apel', 'Jeruk'}

Apel yang kedua otomatis dihapus.

 

Kapan menggunakan List?

Jika urutan data penting.

Misalnya:

bulan = [
    "Januari",
    "Februari",
    "Maret",
    "April"
]

print(bulan[0])

Hasil:

Januari

 

Kapan menggunakan Set?

Jika hanya ingin mengecek apakah data ada.

Misalnya:

admin = {
    "barbara",
    "john",
    "maria",
    "david"
}

user = input("Username: ")

if user in admin:
    print("Login berhasil")
else:
    print("Login ditolak")

 

Kesimpulan

  • Gunakan List ([]) jika:
    • urutan data penting,
    • membutuhkan indeks (data[0]),
    • data boleh duplikat.
  • Gunakan Set ({}) jika:
    • hanya ingin mengecek keberadaan suatu nilai (in),
    • menginginkan pencarian yang lebih cepat,
    • tidak membutuhkan urutan data,
    • tidak ingin ada data duplikat.



Read English version: Click Here











No comments:

Post a Comment