Dictionary Python: Pengertian, Cara Membuat dan Contohnya untuk Pemula!

Profile
Prasatya

12 Desember 2025

Dictionary Python: Pengertian, Cara Membuat dan Contohnya untuk Pemula!

Saat memulai perjalanan belajar pemrograman Python, ada satu teman setia yang akan selalu kamu temui di hampir setiap proyek nyata. Struktur data ini bukan sekadar materi teori belaka, melainkan fondasi penting yang menghubungkan konsep dasar dengan aplikasi dunia nyata, mulai dari analisis data, pengembangan web, hingga pemrosesan API. Jika kamu pernah membayangkan cara menyimpan data profil pengguna, konfigurasi aplikasi, atau respons dari server secara efisien, maka ini adalah jawabannya. Artikel ini akan membimbingmu memahami secara mendalam apa itu dictionary, berbagai cara membuatnya, dan bagaimana menerapkannya dengan contoh-contoh yang relevan untuk pemula.

Apa Itu Dictionary Python

Dictionary Python adalah salah satu struktur data built-in yang paling powerful dan sering digunakan dalam pemrograman Python. Secara sederhana, dictionary dapat diibaratkan seperti kamus bahasa atau buku kontak - kamu mencari informasi berdasarkan "kata kunci" tertentu, bukan berdasarkan nomor urut. Secara teknis adalah koleksi data yang tidak terurut (unordered collection), dapat diubah (mutable), dan diindeks. Setiap item dalam dictionary terdiri dari sepasang key:value (kunci:nilai). Key berfungsi sebagai pengidentifikasi unik untuk mengakses value yang terkait.

Mengapa Dictionary Python Sangat Penting untuk Dikuasai?

Sebelum menyelam ke dalam sintaks dan kode, mari kita pahami dulu alasan kuat di balik pentingnya menguasainya. Dalam pemrograman, memilih struktur data yang tepat sama krusialnya dengan memilih alat yang tepat untuk memperbaiki sebuah mesin. Dictionary menawarkan kombinasi unik dari fleksibilitas, kecepatan, dan kemudahan yang membuatnya tak tergantikan.

Bayangkan kamu sedang mengelola data ratusan pelanggan. Setiap pelanggan memiliki nama, email, nomor telepon, dan riwayat pembelian. Menggunakan list untuk ini akan sangat berantakan karena kamu harus mengingat indeks angka untuk setiap informasi. Dengan menggunakan "kunci" (key) yang deskriptif seperti "nama" atau "email", kamu bisa mengakses data dengan langsung dan intuitif.

Fleksibilitas Luas: Value tidak terbatas pada satu tipe data. Kamu bisa menyimpan string, integer, float, boolean, list, bahkan dictionary lain di dalamnya. Ini mirip dengan laci berkas di kantor: satu laci (key) bisa berisi satu kertas (value sederhana) atau map lengkap berisi banyak dokumen (value kompleks seperti list).

Akses Data Super Cepat: Dictionary diimplementasikan menggunakan teknik hash table. Artinya, ketika kamu mencari nilai dengan kunci tertentu, Python tidak perlu menelusuri semua data dari awal. Prosesnya hampir instan, bahkan untuk data yang sangat besar. Ini efisiensi yang sangat kamu butuhkan dalam aplikasi modern.

Pondasi Teknologi Modern: Pernah mendengar JSON (JavaScript Object Notation)? Format pertukaran data yang menjadi standar web dan API ini pada dasarnya memiliki struktur yang sama persis. Ketika kamu mengambil data dari Instagram API atau Google Maps API, responsnya akan dengan mudah diubah menjadi dictionary, membuat pemrosesan datanya menjadi sangat alami bagi Python developer.

Struktur Dasar dan Anatomi Dictionary Python

Mari kita bedah anatomi dari struktur data ini. Dibangun dari pasangan key: value (kunci dan nilai). Setiap pasangan ini disebut sebagai item. Sebuah dictionary dikelilingi oleh kurung kurawal {}, dan setiap item di dalamnya dipisahkan oleh koma.

# Contoh dasar sebuah dictionary siswa = { "nama": "Budi Santoso", "umur": 18, "kelas": "12 IPA 3", "nilai_rata": 88.5, "aktif_osis": True }

Dalam contoh ini:

  • "nama", "umur", "kelas", "nilai_rata", dan "aktif_osis" adalah keys (kunci).
  • "Budi Santoso", 18, "12 IPA 3", 88.5, dan True adalah values (nilai) yang terkait dengan masing-masing kunci.

Aturan penting tentang kunci:

  1. Harus Unik: Kamu tidak bisa memiliki dua kunci yang persis sama dalam satu dictionary. Jika kamu mendefinisikan kunci yang sama, nilai terakhir yang akan disimpan.
  2. Tipe Data yang Tidak Dapat Berubah (Immutable): Kunci harus berupa tipe data yang immutable. String, integer, float, dan tuple adalah pilihan yang umum. List atau dictionary lain tidak bisa dijadikan kunci.
  3. Case Sensitive: Kunci "Nama" dan "nama" dianggap berbeda.

Baca Juga: Apa itu Looping? Pengertian, Teknik Pada Python & Tips!

Cara Membuat Dictionary di Python

Python menyediakan beberapa cara untuk membuat dictionary, masing-masing berguna dalam skenario yang berbeda. Mari kita eksplorasi satu per satu.

1. Membuat Dictionary Kosong

Membuat dictionary kosong adalah langkah awal ketika kamu belum memiliki data, atau data akan diisi secara dinamis (misalnya, dari input pengguna atau hasil looping).

Langkah-langkahnya sederhana:

# Metode 1: Menggunakan kurung kurawal inventori_barang = {} # Metode 2: Menggunakan fungsi dict() catatan_pertemuan = dict() # Verifikasi print(inventori_barang) # Output: {} print(catatan_pertemuan) # Output: {}

Dictionary kosong ini seperti kanvas putih. Kamu bisa mulai menambahkan item ke dalamnya kapan saja dengan mudah:

inventori_barang["laptop"] = 15 inventori_barang["monitor"] = 22 inventori_barang["keyboard"] = 7 print(inventori_barang) # Output: {'laptop': 15, 'monitor': 22, 'keyboard': 7}

Metode ini sangat kuat dalam situasi seperti membaca file baris per baris dan mengumpulkan datanya ke dalam dictionary.

2. Membuat Dictionary dengan Nilai Awal

Ini adalah cara paling umum ketika kamu sudah tahu data apa yang ingin disimpan sejak awal.

Prosesnya langsung dan deklaratif:

# Dictionary untuk menyimpan data produk produk = { "id": "P-001", "nama": "Kopi Arabika 250gr", "harga": 75000, "stok": 150, "kategori": ["minuman", "bahan dapur"], "diskon": 0.1 # 10% discount } print(produk)

Keunggulannya terlihat di sini: value bisa berupa apa saja. Perhatikan key "kategori", valuenya adalah sebuah list. Ini sangat umum dalam skenario nyata. Kamu bisa menyimpan struktur data yang kompleks dalam satu variabel dictionary yang terorganisir.

Contoh lain yang lebih kompleks:

mahasiswa = { "nim": "12345678", "nama_lengkap": "Dewi Ayu Lestari", "ipk": 3.75, "mata_kuliah": [ {"nama": "Algoritma", "sks": 3, "nilai": "A"}, {"nama": "Basis Data", "sks": 4, "nilai": "A-"} ], "kontak": { "email": "dewi@example.com", "telepon": "08123456789" } } # Mengakses nilai nested (bertingkat) print(mahasiswa["mata_kuliah"][0]["nilai"]) # Output: A print(mahasiswa["kontak"]["email"]) # Output: dewi@example.com

3. Membuat Dictionary dari List atau Tuple

Seringkali data awalnya datang dalam bentuk list of tuples, misalnya dari hasil query database atau pembacaan file CSV. Python memungkinkan konversi yang elegan menjadi dictionary.

Misalkan kamu memiliki data dalam bentuk list of tuples:

data_pasangan = [("nama", "Rudi"), ("kota", "Bandung"), ("usia", 25)] # Konversi ke dictionary menggunakan fungsi dict() data_dict = dict(data_pasangan) print(data_dict) # Output: {'nama': 'Rudi', 'kota': 'Bandung', 'usia': 25}

Teknik ini sangat berguna bersama dengan fungsi zip(). Bayangkan kamu memiliki dua list terpisah: satu untuk kunci dan satu untuk nilai.

list_keys = ["buah", "warna", "rasa"] list_values = ["apel", "merah", "manis"] # Gabungkan dengan zip() dan konversi ke dict deskripsi_buah = dict(zip(list_keys, list_values)) print(deskripsi_buah) # Output: {'buah': 'apel', 'warna': 'merah', 'rasa': 'manis'}

Metode dari list ini adalah senjata ampuh untuk pemrosesan data awal (data preprocessing) sebelum dianalisis lebih lanjut.

Cara Mengakses dan Memodifikasi Data dalam Dictionary Python

Membuat dictionary hanya separuh jalan. Keahlian sebenarnya terletak pada bagaimana kamu berinteraksi dengan data di dalamnya.

Mengakses Nilai

Kamu bisa mengakses nilai dengan dua cara utama:

  1. Menggunakan Kurung Siku [key]: Cara langsung, tetapi akan menyebabkan error KeyError jika key tidak ditemukan.

    siswa = {"nama": "Andi", "nilai": 90} print(siswa["nama"]) # Output: Andi # print(siswa["alamat"]) # Ini akan menyebabkan KeyError
  2. Menggunakan Metode .get(key, default): Cara yang lebih aman dan disarankan. Jika key tidak ditemukan, ia akan mengembalikan None atau nilai default yang kamu tentukan.

    print(siswa.get("nama")) # Output: Andi print(siswa.get("alamat")) # Output: None (tanpa error) print(siswa.get("alamat", "N/A")) # Output: "N/A"

Memperbarui dan Menambah Item

Kamu bisa mengubah nilai yang ada atau menambah pasangan key-value baru dengan sintaks yang sama.

akun = {"username": "johndoe", "level": 1} # Memperbarui nilai yang ada akun["level"] = 2 # Menambah item baru akun["email"] = "johndoe@mail.com" print(akun) # Output: {'username': 'johndoe', 'level': 2, 'email': 'johndoe@mail.com'}

Metode Penting Lainnya yang Harus Kamu Tahu

  • .keys(): Mengembalikan view object berisi semua kunci.
  • .values(): Mengembalikan view object berisi semua nilai.
  • .items(): Mengembalikan view object berisi semua pasangan (key, value) sebagai tuple. Sangat berguna untuk looping.
  • .update(): Menambah atau memperbarui banyak item sekaligus dari dictionary lain.
  • .pop(key): Menghapus item dengan key tertentu dan mengembalikan nilainya.

Contoh penerapan .items() dalam loop:

nilai_semester = {"Matematika": 90, "Fisika": 85, "Kimia": 88} for mata_pelajaran, skor in nilai_semester.items(): print(f"Nilai {mata_pelajaran}: {skor}") # Output: # Nilai Matematika: 90 # Nilai Fisika: 85 # Nilai Kimia: 88

Contoh Penerapan Dictionary Python

Teori menjadi lebih bermakna dengan contoh. Mari kita lihat bagaimana ini digunakan dalam tugas pemrograman sehari-hari.

Contoh 1: Sistem Login Sederhana

# Database pengguna (biasanya dari file atau database sesungguhnya) database_pengguna = { "admin": {"password": "admin123", "role": "admin"}, "budi": {"password": "budi456", "role": "user"}, "sari": {"password": "sari789", "role": "user"} } def login(username, input_password): user_data = database_pengguna.get(username) if user_data and user_data["password"] == input_password: print(f"Login berhasil! Selamat datang {username} ({user_data['role']}).") return True else: print("Username atau password salah.") return False # Uji coba login("budi", "budi456") # Berhasil login("admin", "salah") # Gagal

Contoh 2: Menghitung Frekuensi Kata dalam Sebuah Teks

teks = "saya suka belajar python python itu menyenangkan saya ingin mahir python" kata_kata = teks.split() # Memecah teks menjadi list kata frekuensi_kata = {} for kata in kata_kata: # Metode .get() dengan default 0 sangat elegan di sini frekuensi_kata[kata] = frekuensi_kata.get(kata, 0) + 1 print(frekuensi_kata) # Output: {'saya': 2, 'suka': 1, 'belajar': 1, 'python': 3, ...}

Baca Juga: Kenali 4 Struktur Data pada Python dan Bagaimana Tips Memilihnya

Tips dan Best Practice

  1. Pilih Nama Key yang Deskriptif: Gunakan "tanggal_lahir" bukan "tgl". Keterbacaan kode sangat penting.
  2. Gunakan .get() untuk Akses yang Aman: Hindari KeyError dengan metode .get(), terutama ketika berinteraksi dengan data eksternal.
  3. Manfaatkan Dictionary Comprehension: Untuk membuat dictionary dari iterable dengan cara yang ringkas dan Pythonic.
    # Contoh: membuat dictionary kuadrat bilangan kuadrat = {x: x**2 for x in range(1, 6)} print(kuadrat) # Output: {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
  4. Pahami Kapan Harus Menggunakan Dictionary vs List: Gunakan dictionary ketika kamu perlu mengakses data dengan label unik (key). Gunakan list ketika data kamu berurutan dan diakses berdasarkan posisi (indeks).

Menguasai Dictionary Python adalah langkah strategis dalam perjalanan belajar pemrogramanmu. Konsep ini bukan hanya tentang sintaks, tetapi tentang cara berpikir dalam mengorganisir dan mengakses data dengan efisien. Fleksibilitasnya yang luar biasa membuatnya menjadi tulang punggung bagi banyak library populer seperti Pandas (DataFrame pada dasarnya adalah struktur yang lebih kompleks dari dictionary) dan framework web seperti Django dan Flask. Dari menyimpan konfigurasi sederhana hingga menangani respons API yang kompleks, pemahaman yang solid tentang dictionary akan membantumu menulis kode yang lebih bersih, efisien, dan mudah dipelihara. Praktikkan contoh-contoh di atas, cobalah modifikasi, dan bangun proyek kecilmu sendiri. Ingat, keahlian sejati datang dari pengalaman langsung.

Siap Melangkah Lebih Jauh? Kuasai Python dan Web Development Secara Menyeluruh!

Image

Kamu telah memahami salah satu struktur data inti dalam Python. Bayangkan jika kamu bisa menguasai tidak hanya Python, tetapi seluruh teknologi yang dibutuhkan untuk membangun website dan aplikasi modern dari nol hingga siap deploy. Inilah saatnya kamu upgrade skill dengan mengikuti Kelas Fullstack Web Developer di Codepolitan.

Kelas ini dirancang khusus untuk kamu yang:

  • Ingin memiliki karier cemerlang di industri teknologi dengan skill yang paling dicari.
  • Mendambakan gaji kompetitif sebagai seorang profesional digital.
  • Bermimpi membuat website atau aplikasi untuk mengembangkan bisnis onlinemu sendiri.
  • Mau belajar secara terstruktur, dari frontend (HTML, CSS, JavaScript, React) hingga backend (Python, Django, Database) dengan panduan mentor berpengalaman.

Di kelas Fullstack ini, konsep seperti ini yang baru saja kamu pelajari akan diaplikasikan dalam skenario nyata: membangun API, mengelola data pengguna, berintegrasi dengan database, dan banyak lagi. Transformasi dari pemula menjadi developer siap kerja dimulai dari keputusan untuk belajar secara mendalam.

Jangan hanya membuat dictionary, mulailah membangun masa depanmu

Referensi

  1. Python Official Documentation: Dictionaries
  2. Real Python: Python Dictionary Tutorial
  3. W3Schools: Python Dictionaries

What do you think?

Reactions