Python - Dictionaries bersarang
Halo para pemrogram aspiran! Hari ini, kita akan menyelam ke dalam dunia yang menarik tentang dictionaries bersarang di Python. Jangan khawatir jika Anda masih baru dalam pemrograman - saya akan memandu Anda melalui topik ini langkah demi langkah, sama seperti yang saya lakukan untuk banyak siswa selama tahun-tahun pengajaran saya. Jadi,Ambil minuman kesukaan Anda, rasakan diri Anda nyaman, dan mari kita melangkah bersama dalam petualangan Python ini!
Dictionaries Bersarang
Apa itu Dictionaries Bersarang?
Bayangkan Anda memiliki sebuah kotak besar (dictionaries utama), dan di dalam kotak ini, Anda memiliki beberapa kotak kecil (dictionaries bersarang). Masing-masing kotak kecil ini dapat berisi berbagai item (pasangan kunci-nilai). Itulah yang sebenarnya adalah dictionaries bersarang - sebuah dictionary di dalam dictionary.
Mari kita mulai dengan contoh sederhana:
siswa = {
"nama": "Alice",
"umur": 20,
"nilai": {
"matematika": 95,
"ipa": 88,
"sejarah": 92
}
}
Dalam contoh ini, siswa
adalah dictionaries utama kita. Dalamnya berisi informasi dasar tentang Alice, termasuk sebuah dictionaries bersarang nilai
yang menyimpan nilai-nilai dia dalam mata pelajaran yang berbeda.
Membuat Dictionaries Bersarang di Python
Membuat dictionaries bersarang mirip dengan membuat dictionaries reguler, tetapi Anda menambahkan dictionaries lain sebagai nilai. Mari kita membuat contoh yang lebih kompleks - sebuah direktori sekolah:
sekolah = {
"Kelas 9": {
"Alice": {
"umur": 14,
"mata_pelajaran": ["Matematika", "IPA", "B. Inggris"]
},
"Bob": {
"umur": 15,
"mata_pelajaran": ["Sejarah", "Seni", "PJK"]
}
},
"Kelas 10": {
"Charlie": {
"umur": 16,
"mata_pelajaran": ["Fisika", "Kimia", "Biologi"]
}
}
}
Di sini, kita memiliki dictionaries utama sekolah
, yang berisi tingkat kelas sebagai kunci. Setiap tingkat kelas memiliki dictionaries lain yang berisi nama siswa sebagai kunci. Setiap siswa kemudian memiliki dictionaries pribadi dengan informasi pribadi.
Menambahkan Item ke Dictionaries Bersarang di Python
Menambahkan item ke dictionaries bersarang adalah sangat mudah. Anda dapat menambahkan pasangan kunci-nilai baru ke dictionaries bersarang yang ada atau membuat dictionaries bersarang baru.
Mari kita tambahkan siswa baru ke Kelas 10:
sekolah["Kelas 10"]["Diana"] = {
"umur": 15,
"mata_pelajaran": ["Matematika", "Ilmu Komputer", "Sastra"]
}
print(sekolah["Kelas 10"])
Output:
{
'Charlie': {'umur': 16, 'mata_pelajaran': ['Fisika', 'Kimia', 'Biologi']},
'Diana': {'umur': 15, 'mata_pelajaran': ['Matematika', 'Ilmu Komputer', 'Sastra']}
}
Kita juga dapat menambahkan tingkat kelas baru:
sekolah["Kelas 11"] = {
"Eve": {
"umur": 17,
"mata_pelajaran": ["Ekonomi", "Psikologi", "Prancis"]
}
}
print(sekolah.keys())
Output:
dict_keys(['Kelas 9', 'Kelas 10', 'Kelas 11'])
Mengakses Item Dari Dictionaries Bersarang di Python
Untuk mengakses item di dictionaries bersarang, kita menggunakan kurung siku beberapa kali, masing-masing mewakili tingkat penyusunan. Mari kita ambil beberapa informasi dari dictionaries sekolah
kita:
# Mendapatkan umur Alice
alice_umur = sekolah["Kelas 9"]["Alice"]["umur"]
print(f"Umur Alice: {alice_umur}")
# Mendapatkan mata pelajaran Charlie
charlie_mata_pelajaran = sekolah["Kelas 10"]["Charlie"]["mata_pelajaran"]
print(f"Mata pelajaran Charlie: {charlie_mata_pelajaran}")
Output:
Umur Alice: 14
Mata pelajaran Charlie: ['Fisika', 'Kimia', 'Biologi']
Ingat, jika Anda tidak yakin tentang struktur dictionaries bersarang Anda, Anda dapat selalu menggunakan metode get()
untuk menghindari pengecualian KeyError:
# Mencoba mendapatkan siswa yang tidak ada
frank_umur = sekolah.get("Kelas 9", {}).get("Frank", {}).get("umur", "Tidak ditemukan")
print(f"Umur Frank: {frank_umur}")
Output:
Umur Frank: Tidak ditemukan
Menghapus Dictionaries Dari Dictionaries Bersarang
Untuk menghapus dictionaries bersarang, kita menggunakan kata kunci del
. Mari kita hapus Bob dari Kelas 9:
del sekolah["Kelas 9"]["Bob"]
print(sekolah["Kelas 9"])
Output:
{'Alice': {'umur': 14, 'mata_pelajaran': ['Matematika', 'IPA', 'B. Inggris']}}
Hati-hati saat menghapus item dari dictionaries bersarang. SelaluPastikan bahwa kunci ada untuk menghindari pengecualian KeyError.
Mengulang Dictionaries Bersarang di Python
Mengulang dictionaries bersarang memerlukan pengulangan bersarang. Mari kita cetak semua informasi di dictionaries sekolah
kita:
for kelas, siswa in sekolah.items():
print(f"\n{kelas}:")
for nama, info in siswa.items():
print(f" {nama}:")
for kunci, nilai in info.items():
print(f" {kunci}: {nilai}")
Output:
Kelas 9:
Alice:
umur: 14
mata_pelajaran: ['Matematika', 'IPA', 'B. Inggris']
Kelas 10:
Charlie:
umur: 16
mata_pelajaran: ['Fisika', 'Kimia', 'Biologi']
Diana:
umur: 15
mata_pelajaran: ['Matematika', 'Ilmu Komputer', 'Sastra']
Kelas 11:
Eve:
umur: 17
mata_pelajaran: ['Ekonomi', 'Psikologi', 'Prancis']
Struktur pengulangan bersarang ini memungkinkan kita untuk mengakses dan mencetak semua tingkat dari dictionaries bersarang kita.
Metode untuk Bekerja Dengan Dictionaries Bersarang
Berikut adalah tabel dari metode yang berguna untuk bekerja dengan dictionaries bersarang:
Metode | Deskripsi |
---|---|
dict.items() |
Mengembalikan objek tampilan yang berisi pasangan kunci-nilai dari dictionaries |
dict.keys() |
Mengembalikan objek tampilan yang berisi kunci dari dictionaries |
dict.values() |
Mengembalikan objek tampilan yang berisi nilai-nilai dari dictionaries |
dict.get(key, default) |
Mengembalikan nilai untuk kunci yang ditentukan jika ada, jika tidak mengembalikan nilai default |
dict.update(other_dict) |
Memperbarui dictionaries dengan elemen dari dictionaries lain atau iterable dari pasangan kunci-nilai |
dict.pop(key, default) |
Menghapus dan mengembalikan nilai untuk kunci yang ditentukan. Jika kunci tidak ada, mengembalikan nilai default |
Ingat, metode ini dapat diterapkan pada setiap tingkat dari dictionaries bersarang.
Dan itu tadi, para siswa tercinta! Kita telah menjelajahi masalah-masalah tentang dictionaries bersarang di Python. Dari membuat dan menambahkan item ke mengakses, menghapus, dan mengulang mereka, Anda sekarang memiliki alat untuk bekerja dengan struktur data kompleks ini.
Seperti dengan setiap konsep pemrograman, praktek adalah kunci. Cobalah untuk membuat dictionaries bersarang Anda sendiri, mungkin sebuah katalog pustaka digital atau buku resep. Semakin Anda bermain dengan struktur ini, semakin Anda akan merasa nyaman.
Ingat, dalam dunia pemrograman, kesalahan adalah hanya kesempatan untuk belajar. Jadi jangan takut untuk bereksperimen dan membuat kesalahan - itulah cara kita semua tumbuh sebagai pemrogram. Tetaplah untuk pemrograman, tetaplah untuk belajar, dan yang paling penting, bersenang-senanglah dengan Python!
Credits: Image by storyset