free page hit counter
12

Nested Dictionary Python: Panduan & Contoh Lengkap

Nested Dictionary Python adalah struktur data yang sangat berguna untuk menyimpan data kompleks secara hierarkis. Dengan konsep dictionary di dalam…

Nested Dictionary Python adalah struktur data yang sangat berguna untuk menyimpan data kompleks secara hierarkis. Dengan konsep dictionary di dalam dictionary, kamu dapat membuat representasi data yang lebih rapi, terstruktur, dan mudah diakses. Dalam artikel ini, kita akan membahas secara detail apa itu nested dictionary, cara membuatnya, cara mengakses, mengubah, menambah, dan menghapus data di dalamnya. Disertai contoh kode dan studi kasus nyata agar kamu memahami dengan baik penggunaannya.

Apa Itu Nested Dictionary?

Nested dictionary adalah dictionary yang memiliki dictionary lain sebagai nilainya. Artinya, setiap key bisa menyimpan dictionary lagi di dalamnya. Struktur ini mirip dengan JSON (JavaScript Object Notation) yang umum digunakan dalam pertukaran data antar aplikasi.

# Contoh nested dictionary sederhana
mahasiswa = {
    "mhs1": {"nama": "Rina", "umur": 20, "jurusan": "Informatika"},
    "mhs2": {"nama": "Budi", "umur": 22, "jurusan": "Sistem Informasi"},
    "mhs3": {"nama": "Siti", "umur": 21, "jurusan": "Teknik Komputer"}
}

print(mahasiswa)

Pada contoh di atas, dictionary mahasiswa memiliki tiga elemen utama, yaitu mhs1, mhs2, dan mhs3. Setiap elemen memiliki dictionary lain sebagai nilainya yang berisi detail mahasiswa.

Cara Mengakses Data Dalam Nested Dictionary

Untuk mengakses nilai tertentu dalam nested dictionary, kamu cukup menuliskan key secara berurutan.

# Mengakses nilai 'nama' dari mahasiswa mhs1
print(mahasiswa["mhs1"]["nama"])  # Output: Rina

# Mengakses jurusan mahasiswa mhs3
print(mahasiswa["mhs3"]["jurusan"])  # Output: Teknik Komputer

Jika kamu mencoba mengakses key yang tidak ada, Python akan menghasilkan error KeyError. Oleh karena itu, lebih aman menggunakan metode get().

print(mahasiswa.get("mhs2", {}).get("umur", "Data tidak ditemukan"))

Menambah Data ke Nested Dictionary

Kamu dapat menambah dictionary baru atau menambahkan elemen baru pada dictionary yang sudah ada.

# Menambahkan mahasiswa baru
mahasiswa["mhs4"] = {"nama": "Andi", "umur": 23, "jurusan": "Data Science"}

# Menambahkan atribut baru ke mahasiswa mhs1
mahasiswa["mhs1"]["alamat"] = "Jakarta"

print(mahasiswa["mhs1"])

Mengubah Nilai Dalam Nested Dictionary

Untuk mengubah nilai di dalam nested dictionary, cukup akses key yang diinginkan dan ganti nilainya seperti biasa.

# Mengubah umur mahasiswa mhs2
mahasiswa["mhs2"]["umur"] = 24

# Mengubah jurusan mahasiswa mhs3
mahasiswa["mhs3"]["jurusan"] = "Cyber Security"

print(mahasiswa["mhs2"])
print(mahasiswa["mhs3"])

Menghapus Data Dalam Nested Dictionary

Pada Python, kamu bisa menghapus elemen dalam nested dictionary dengan menggunakan perintah del.

# Menghapus key tertentu
del mahasiswa["mhs1"]["alamat"]

# Menghapus seluruh dictionary mhs4
del mahasiswa["mhs4"]

print(mahasiswa)

Iterasi pada Nested Dictionary

Kamu dapat melakukan loop melalui nested dictionary untuk membaca semua data di dalamnya. Biasanya digunakan untuk menampilkan data dalam bentuk tabel atau daftar.

for key, value in mahasiswa.items():
    print(f"ID: {key}")
    for detail_key, detail_value in value.items():
        print(f"  {detail_key}: {detail_value}")
    print("-" * 20)

Output:

ID: mhs1
  nama: Rina
  umur: 20
  jurusan: Informatika
--------------------
ID: mhs2
  nama: Budi
  umur: 24
  jurusan: Sistem Informasi
--------------------
ID: mhs3
  nama: Siti
  umur: 21
  jurusan: Cyber Security
--------------------

Studi Kasus: Data Siswa dan Nilai

Berikut contoh penerapan nested dictionary untuk menyimpan data siswa beserta nilai mata pelajarannya.

siswa = {
    "001": {"nama": "Tono", "nilai": {"Matematika": 85, "Bahasa": 90, "IPA": 88}},
    "002": {"nama": "Ani", "nilai": {"Matematika": 92, "Bahasa": 89, "IPA": 95}},
    "003": {"nama": "Dewi", "nilai": {"Matematika": 78, "Bahasa": 80, "IPA": 82}}
}

# Menampilkan nilai setiap siswa
for id_siswa, data in siswa.items():
    print(f"ID: {id_siswa} - Nama: {data['nama']}")
    for pelajaran, nilai in data["nilai"].items():
        print(f"  {pelajaran}: {nilai}")

Dengan struktur seperti ini, kamu dapat dengan mudah memanipulasi data, seperti menambah nilai, menghitung rata-rata, atau mencari nilai tertinggi per mata pelajaran.

Manfaat Menggunakan Nested Dictionary

  • Struktur Data Kompleks: Cocok untuk menyimpan data bersarang (nested) seperti JSON.
  • Mudah Dikelola: Setiap elemen dapat diakses secara individual menggunakan key unik.
  • Efisien: Cocok untuk data dinamis seperti konfigurasi, hasil API, atau data pengguna aplikasi.

Kesimpulan

Nested Dictionary Python merupakan konsep penting yang perlu kamu kuasai, terutama jika sering bekerja dengan data terstruktur. Dengan pemahaman yang baik, kamu bisa membangun aplikasi berbasis data yang efisien dan mudah dikembangkan. Gunakan nested dictionary ketika kamu perlu menyimpan informasi yang memiliki hierarki atau relasi antar data yang jelas.

Semoga artikel ini membantu kamu memahami cara kerja nested dictionary Python dengan lebih mendalam. Jangan lupa praktikkan langsung di Python agar lebih cepat menguasainya!

rysasahrial@gmail.com

Leave a Reply

Your email address will not be published. Required fields are marked *