Selamat datang kembali di seri Python 101! Di bagian sebelumnya, kita telah membahas tentang list dan tuple. Sekarang, kita akan menyelami struktur data yang lebih canggih dan fleksibel: Dictionaries. Selain itu, kita juga akan mempelajari bagaimana cara melakukan perulangan (looping) melalui data terstruktur ini untuk memanipulasi dan mengekstrak informasi yang kita butuhkan.
Daftar Isi
- Apa Itu Dictionary?
- Membuat Dictionary
- Mengakses Nilai dalam Dictionary
- Memodifikasi Dictionary
- Method-Method Penting dalam Dictionary
- Looping Melalui Dictionary
- Dictionary Bersarang (Nested Dictionaries)
- Studi Kasus: Analisis Data Sederhana
- Kesimpulan
Apa Itu Dictionary?
Dictionary (atau kamus dalam Bahasa Indonesia) adalah struktur data yang menyimpan data dalam format key-value pairs. Bayangkan sebuah kamus sungguhan: setiap kata (key) memiliki definisi (value). Dalam Python, keys harus unik dan immutable (tidak bisa diubah), seperti string, angka, atau tuple. Values, di sisi lain, bisa berupa tipe data apa pun, termasuk list, tuple, bahkan dictionary lain!
Keunggulan utama dictionary adalah kemampuannya untuk mengakses nilai dengan cepat menggunakan key. Berbeda dengan list yang mengakses elemen menggunakan indeks numerik, dictionary menggunakan key yang lebih deskriptif dan mudah diingat.
Membuat Dictionary
Ada dua cara utama untuk membuat dictionary di Python:
- Menggunakan kurung kurawal {}:
Ini adalah cara yang paling umum. Kita memasukkan key-value pairs di antara kurung kurawal, dipisahkan oleh koma. Setiap pair dipisahkan oleh titik dua (:).
# Contoh: Dictionary informasi karyawan
karyawan = {
"nama": "Budi Santoso",
"usia": 30,
"jabatan": "Data Scientist",
"gaji": 15000000
}
dict()
:Fungsi ini bisa digunakan untuk membuat dictionary dari list atau tuple yang berisi key-value pairs.
# Contoh: Membuat dictionary dari list tuple
data = [("nama", "Siti Aminah"), ("usia", 25), ("jabatan", "Software Engineer")]
karyawan = dict(data)
Mengakses Nilai dalam Dictionary
Untuk mengakses nilai dalam dictionary, kita menggunakan key yang sesuai di dalam kurung siku [].
# Contoh: Mengakses nama karyawan
nama = karyawan["nama"]
print(nama) # Output: Budi Santoso
# Contoh: Mengakses gaji karyawan
gaji = karyawan["gaji"]
print(gaji) # Output: 15000000
Penting: Jika kita mencoba mengakses key yang tidak ada dalam dictionary, Python akan menghasilkan error KeyError
. Untuk menghindari ini, kita bisa menggunakan method get()
.
# Contoh: Menggunakan method get() untuk menghindari KeyError
alamat = karyawan.get("alamat", "Alamat tidak tersedia")
print(alamat) # Output: Alamat tidak tersedia
Method `get()` mengambil key sebagai argumen pertama dan nilai default sebagai argumen kedua. Jika key ditemukan, method akan mengembalikan nilainya. Jika key tidak ditemukan, method akan mengembalikan nilai default.
Memodifikasi Dictionary
Dictionary bersifat mutable, yang berarti kita bisa mengubah isinya setelah dibuat. Kita bisa menambahkan, mengubah, atau menghapus key-value pairs.
- Menambahkan key-value pair baru:
# Contoh: Menambahkan alamat ke dictionary karyawan
karyawan["alamat"] = "Jakarta Selatan"
# Contoh: Mengubah gaji karyawan
karyawan["gaji"] = 18000000
Kita bisa menggunakan keyword del
atau method pop()
.
# Contoh: Menghapus jabatan karyawan menggunakan del
del karyawan["jabatan"]
# Contoh: Menghapus usia karyawan menggunakan pop()
usia = karyawan.pop("usia") # pop() mengembalikan nilai yang dihapus
print(usia) # Output: 30
Method-Method Penting dalam Dictionary
Berikut adalah beberapa method penting yang sering digunakan dalam dictionary:
keys()
: Mengembalikan view object yang berisi semua keys dalam dictionary.values()
: Mengembalikan view object yang berisi semua values dalam dictionary.items()
: Mengembalikan view object yang berisi semua key-value pairs dalam dictionary sebagai tuple.copy()
: Membuat salinan (copy) dari dictionary.clear()
: Menghapus semua item dari dictionary.update()
: Menambahkan key-value pairs dari dictionary lain ke dictionary saat ini. Jika key sudah ada, nilainya akan diperbarui.
Looping Melalui Dictionary
Kita bisa melakukan perulangan melalui dictionary menggunakan loop for
. Ada beberapa cara untuk melakukan ini:
- Looping melalui keys:
# Contoh: Looping melalui keys dan mencetak nilai
for key in karyawan:
print(key, ":", karyawan[key])
# Contoh: Looping melalui values
for value in karyawan.values():
print(value)
# Contoh: Looping melalui key-value pairs menggunakan items()
for key, value in karyawan.items():
print(f"{key}: {value}")
Dictionary Bersarang (Nested Dictionaries)
Dictionary bisa berisi dictionary lain sebagai value. Ini disebut dictionary bersarang. Struktur ini berguna untuk merepresentasikan data yang kompleks dan hierarkis.
# Contoh: Dictionary bersarang untuk informasi perusahaan
perusahaan = {
"nama": "PT Maju Jaya",
"alamat": "Jl. Sudirman No. 123, Jakarta",
"karyawan": {
"Budi": {"usia": 30, "jabatan": "Data Scientist"},
"Siti": {"usia": 25, "jabatan": "Software Engineer"}
}
}
# Mengakses usia Budi
usia_budi = perusahaan["karyawan"]["Budi"]["usia"]
print(usia_budi) # Output: 30
Studi Kasus: Analisis Data Sederhana
Mari kita gunakan dictionary untuk melakukan analisis data sederhana. Misalnya, kita memiliki data penjualan produk:
penjualan = {
"produk_A": 100,
"produk_B": 150,
"produk_C": 80
}
# Menghitung total penjualan
total_penjualan = sum(penjualan.values())
print("Total penjualan:", total_penjualan)
# Mencari produk dengan penjualan tertinggi
produk_terlaris = max(penjualan, key=penjualan.get)
print("Produk terlaris:", produk_terlaris)
Kesimpulan
Dictionary adalah struktur data yang sangat berguna dalam Python. Kemampuannya untuk menyimpan data dalam format key-value pairs memungkinkan kita untuk mengakses dan memanipulasi data dengan efisien. Dengan memahami cara membuat, memodifikasi, dan melakukan perulangan melalui dictionary, Anda akan dapat menyelesaikan berbagai masalah pemrograman dengan lebih mudah. Jangan ragu untuk bereksperimen dengan dictionary dan menggabungkannya dengan struktur data lain seperti list dan tuple untuk menciptakan solusi yang lebih kompleks dan powerful. Selamat mencoba!