Skip to main content

Dictionary vs List

Dalam Python, list dan dict sama-sama digunakan untuk menyimpan kumpulan data. Namun, keduanya memiliki tujuan dan karakteristik yang berbeda.

Memahami kapan harus menggunakan list atau dict merupakan salah satu kemampuan dasar yang penting dalam menulis program yang baik.


1. Kapan Menggunakan Dictionary?​

Dictionary cocok digunakan ketika data memiliki hubungan key-value atau memiliki atribut yang jelas.

Contohnya adalah data seorang pengguna:

user_profile = {
"age": 22,
"username": "superman",
"weapons": ["shield", "laser"],
"is_active": True
}

Data tersebut memiliki beberapa atribut:

age
username
weapons
is_active

Setiap data memiliki nama atau key yang menjelaskan maknanya.


2. Karakteristik Dictionary​

Dictionary cocok digunakan ketika:

  • Data memiliki beberapa atribut.
  • Setiap nilai memiliki nama atau label.
  • Data merepresentasikan suatu objek atau entitas.
  • Kita ingin mengakses data berdasarkan nama atau key.
  • Struktur data lebih penting daripada posisi elemen.

Contohnya:

product = {
"name": "Laptop",
"price": 10000000,
"stock": 10,
"is_available": True
}

Untuk mendapatkan harga:

print(product["price"])

Kita tidak perlu mengingat bahwa harga berada di posisi tertentu.

Kita cukup menggunakan key:

"price"

3. Contoh Data yang Cocok Menggunakan Dictionary​

Beberapa contoh data yang biasanya cocok direpresentasikan menggunakan dictionary:

Data Pengguna​

user = {
"name": "Andi",
"age": 25,
"email": "andi@example.com"
}

Data Produk​

product = {
"name": "Laptop",
"price": 10000000,
"stock": 5
}

Data Mahasiswa​

student = {
"name": "Budi",
"nim": "20260001",
"major": "Informatics"
}

Dalam contoh tersebut, setiap data memiliki atribut yang jelas.


4. Kapan Menggunakan List?​

List cocok digunakan ketika kita ingin menyimpan sekumpulan data dalam sebuah urutan tertentu.

Contohnya:

shopping_cart = [
"apples",
"milk",
"bread"
]

Setiap item memiliki posisi:

index 0 → apples
index 1 → milk
index 2 → bread

Kita dapat mengakses item berdasarkan index:

print(shopping_cart[0])

Hasil:

apples

5. Karakteristik List​

List cocok digunakan ketika:

  • Urutan data penting.
  • Data diakses berdasarkan posisi atau index.
  • Kita memiliki kumpulan data.
  • Data akan diproses secara berurutan.
  • Kita sering melakukan iterasi terhadap kumpulan data.

Contohnya:

high_scores = [98, 95, 87, 80]

Urutan nilai tersebut penting karena menunjukkan ranking:

98 → peringkat 1
95 → peringkat 2
87 → peringkat 3
80 → peringkat 4

6. Contoh Data yang Cocok Menggunakan List​

Daftar Belanja​

shopping_cart = [
"apples",
"milk",
"bread"
]

Daftar Nilai​

scores = [90, 85, 78, 95]

Daftar Nama​

names = [
"Andi",
"Budi",
"Citra"
]

Urutan Proses​

steps = [
"login",
"select product",
"checkout",
"payment"
]

Dalam contoh tersebut, posisi atau urutan data memiliki arti.


7. Perbandingan Sederhana​

Bayangkan kita ingin menyimpan data seseorang.

Jika menggunakan list:

user = [
"Andi",
25,
"Palu"
]

Kita harus mengetahui arti setiap posisi:

index 0 → nama
index 1 → umur
index 2 → kota

Sedangkan menggunakan dictionary:

user = {
"name": "Andi",
"age": 25,
"city": "Palu"
}

Strukturnya jauh lebih jelas:

name → Andi
age → 25
city → Palu

Untuk data seperti ini, dictionary lebih sesuai.


8. List untuk Sekumpulan Data​

Misalnya kita hanya ingin menyimpan daftar nama:

users = [
"Andi",
"Budi",
"Citra"
]

Tidak ada atribut tambahan yang perlu disimpan.

Kita hanya membutuhkan sekumpulan nama yang terurut.

Dalam kasus ini, list lebih tepat.


9. Dictionary untuk Data dengan Atribut​

Jika setiap pengguna memiliki beberapa informasi:

users = {
"name": "Andi",
"age": 25,
"city": "Palu",
"is_active": True
}

Dictionary lebih sesuai karena setiap nilai memiliki atribut atau label.


10. List dan Dictionary Dapat Digabungkan​

Dalam program nyata, kita tidak selalu harus memilih salah satu.

list dan dict sering digunakan secara bersamaan.

Contohnya, daftar pengguna:

users = [
{
"name": "Andi",
"age": 25
},
{
"name": "Budi",
"age": 30
},
{
"name": "Citra",
"age": 27
}
]

Strukturnya:

List
│
├── Dictionary
│ ├── name
│ └── age
│
├── Dictionary
│ ├── name
│ └── age
│
└── Dictionary
├── name
└── age

List digunakan untuk menyimpan kumpulan pengguna, sedangkan dictionary digunakan untuk menyimpan atribut masing-masing pengguna.


11. Contoh Penggunaan List + Dictionary​

Misalnya data produk:

products = [
{
"name": "Laptop",
"price": 10000000
},
{
"name": "Mouse",
"price": 500000
},
{
"name": "Keyboard",
"price": 750000
}
]

Di sini:

List
→ menyimpan kumpulan produk

Dictionary
→ menyimpan informasi setiap produk

Kombinasi seperti ini sangat umum digunakan dalam aplikasi.


12. Perbandingan List dan Dictionary​

KarakteristikListDictionary
Sintaks[]{}
StrukturKumpulan elemenKey-value
AksesIndexKey
Contoh aksesdata[0]data["name"]
FokusUrutan dataHubungan data
Cocok untukSekumpulan dataData dengan atribut
UrutanPentingInsertion order dipertahankan pada Python modern
ContohDaftar namaProfil pengguna

13. Pertanyaan Sederhana untuk Menentukan Pilihan​

Ketika bingung memilih list atau dict, tanyakan:

Apakah saya memiliki sekumpulan data yang memiliki urutan?​

Jika ya, gunakan:

list

Contoh:

scores = [90, 85, 80, 75]

Apakah setiap data memiliki atribut atau nama yang berbeda?​

Jika ya, gunakan:

dict

Contoh:

user = {
"name": "Andi",
"age": 25,
"city": "Palu"
}

14. Analogi Sederhana​

Bayangkan sebuah daftar belanja:

Apel
Susu
Roti

Kita hanya membutuhkan urutan item.

Ini cocok menggunakan:

shopping_cart = [
"Apel",
"Susu",
"Roti"
]

Sekarang bayangkan informasi sebuah produk:

Nama : Laptop
Harga : 10.000.000
Stok : 10
Merek : Lenovo

Produk memiliki banyak atribut.

Ini lebih cocok menggunakan:

product = {
"name": "Laptop",
"price": 10000000,
"stock": 10,
"brand": "Lenovo"
}

15. Kesalahan yang Sering Terjadi​

Jangan memilih list hanya karena ingin menyimpan banyak data.

Pertimbangkan bagaimana data tersebut akan digunakan.

Misalnya:

user = [
"Andi",
25,
"Palu",
True
]

Kode tersebut memang valid, tetapi kurang jelas.

Kita harus mengingat:

index 0 → nama
index 1 → umur
index 2 → kota
index 3 → status

Dengan dictionary:

user = {
"name": "Andi",
"age": 25,
"city": "Palu",
"is_active": True
}

Informasi menjadi lebih mudah dipahami.


16. Prinsip Utama​

Gunakan List ketika fokus utama adalah:

"Kumpulan data"
+
"Urutan"

Contoh:

scores = [98, 95, 87, 80]

Gunakan Dictionary ketika fokus utama adalah:

"Data"
+
"Atribut / Key"

Contoh:

user = {
"name": "Andi",
"age": 25
}

Kesimpulan​

list dan dict memiliki tujuan yang berbeda.

Gunakan List​

Jika:

  • Data merupakan sekumpulan item.
  • Urutan data penting.
  • Data diakses berdasarkan posisi.
  • Data akan diproses secara berurutan.

Contoh:

shopping_cart = [
"apples",
"milk",
"bread"
]

Gunakan Dictionary​

Jika:

  • Data memiliki atribut.
  • Setiap nilai memiliki nama atau key.
  • Data merepresentasikan suatu objek atau entitas.
  • Kita ingin mengakses data berdasarkan key.

Contoh:

user = {
"name": "Andi",
"age": 25,
"city": "Palu"
}

Kombinasikan Keduanya​

Dalam aplikasi nyata, list dan dict sering digunakan bersama:

users = [
{
"name": "Andi",
"age": 25
},
{
"name": "Budi",
"age": 30
}
]
tip

Intinya: jangan memilih struktur data hanya berdasarkan jumlah data yang ingin disimpan. Pertimbangkan bagaimana data tersebut akan diakses, diorganisasi, dan digunakan oleh program.