Kamus Python: Struktur & Peta Hash

Kamus Master Python. Pelajari cara menyimpan, mengambil, dan menangani data pasangan nilai kunci. Memahami kinerja dan praktik terbaik untuk pemetaan.

Coba di Editor

Ikhtisar

Kamus bisa dibilang merupakan struktur data yang paling penting dan dioptimalkan di Python. Kamus adalah kumpulan nilai data yang dapat diubah dan disimpan dalam pasangan `kunci:nilai`. Jika Anda membayangkan kamus dunia nyata, "kunci" adalah kata yang Anda cari, dan "nilai" adalah definisinya. Struktur pemasangan ini membuatnya sangat efisien untuk mengambil, memperbarui, dan mengelola data relasional.

Di balik terpal, kamus Python diimplementasikan sebagai Tabel Hash (atau Peta Hash) yang sangat optimal. Ini menyiratkan bahwa mengambil nilai dengan kuncinya adalah operasi waktu konstan `O(1)`. Baik kamus Anda berisi sepuluh item atau sepuluh juta item, Python dapat langsung melompat langsung ke alamat memori nilai tersebut tanpa perlu memindai seluruh koleksi.

Untuk mendefinisikan kamus, Anda menggunakan kurung kurawal `{}` dengan kunci dan nilai dipisahkan dengan titik dua `:`. Kunci harus berupa tipe yang tidak dapat diubah (seperti string, bilangan bulat, atau tupel), artinya Anda tidak dapat menggunakan daftar sebagai kunci kamus. Namun, nilai bisa berupa apa saja—termasuk daftar, objek, atau bahkan kamus yang sangat bertingkat, menjadikannya sempurna untuk mewakili struktur data mirip JSON.

Mengakses nilai dilakukan menggunakan notasi braket (misalnya, `pengguna["nama"]`). Namun, jika kuncinya tidak ada, pendekatan ini memunculkan `KeyError`, yang segera menghentikan eksekusi program. Untuk menulis kode yang lebih aman, para profesional menggunakan metode `.get()` (misalnya, `user.get("name")`), yang dengan baik mengembalikan `None` atau nilai default khusus jika kuncinya hilang, sehingga mencegah error yang tidak perlu.

Secara historis, kamus Python sama sekali tidak berurutan. Namun, mulaiPython 3.7, kamus secara resmi dijamin mempertahankan urutan penyisipan. Artinya, saat Anda melakukan iterasi pada kamus menggunakan metode seperti `.keys()`, `.values()`, atau `.items()`, item akan dikembalikan dalam urutan persis seperti saat pertama kali ditambahkan ke kamus, sehingga menggabungkan kecepatan peta hash dengan prediktabilitas daftar.

Kode & Output Eksekusi

Membuat profil konfigurasi pengguna yang banyak memanfaatkan pasangan nilai kunci bersarang.

user = {
    "username": "coder123",
    "role": "admin",
    "active": True
}

user["last_login"] = "2026-04-10" # Adding a key
print(f"Username is {user['username']}")

# Iterating over key-value pairs
for key, value in user.items():
    print(f"{key}: {value}")
Keluaran Terminal
Username is coder123
username: coder123
role: admin
active: True
last_login: 2026-04-10

Implementasi Langkah demi Langkah

  • Menangani respons JSON dari REST API
  • Memetakan ID unik ke objek data besar
  • Menyimpan parameter konfigurasi aplikasi

Pertanyaan yang Sering Diajukan

Apa yang terjadi jika saya mencoba mengakses kunci yang tidak ada?

Menggunakan notasi braket (pengguna["nama"]) memunculkan KeyError. Gunakan user.get("name") untuk mengembalikan None tanpa melempar.

Topik Terkait

Sumber Daya Python yang Direkomendasikan

Perluas pengetahuan Anda dengan tutorial interaktif terkait, lembar contekan, dan perbandingan kode.