Python - Dictionaries Bersarang
Hai di sana, para pemrogram berbakat! Hari ini, kita akan menyelam ke atas dunia yang menarik tentang dictionaries bersarang di Python. Jangan khawatir jika kamu baru mengenal pemrograman - saya akan membimbing kamu melalui topik ini langkah demi langkah, sama seperti saya telah lakukan untuk banyak pelajar selama tahun-tahun pengajaran saya. Jadi, ambil minuman kesukaan kamu, Duduklah dengan santai, dan mari kita melakukan perjalanan Python ini bersama-sama!
Dictionaries Bersarang
Apa itu Dictionaries Bersarang?
Bayangkan kamu memiliki rak besar (yang merupakan dictionary utama), dan di dalam rak ini, kamu memiliki beberapa rak kecil (yang merupakan dictionaries bersarang). Setiap rak kecil ini dapat mengandungi beberapa item (pasangan kunci-nilai). Itulah konsep dasar dictionaries bersarang - sebuah dictionary di dalam dictionary.
Mari kita mulai dengan contoh sederhana:
student = {
"name": "Alice",
"age": 20,
"grades": {
"math": 95,
"science": 88,
"history": 92
}
}
Dalam contoh ini, student
adalah dictionary utama kita. Ini mengandung informasi dasar tentang Alice, termasuk dictionary bersarang grades
yang menampilkan nilai-nilai dia dalam mata pelajaran berbeda.
Membuat Dictionaries Bersarang di Python
Membuat dictionaries bersarang sama seperti membuat dictionary biasa, tetapi kamu menambahkan dictionary lain sebagai nilai. Mari kita buat contoh yang lebih kompleks - sebuah direktori sekolah:
school = {
"Kelas 9": {
"Alice": {
"age": 14,
"subjects": ["Math", "Science", "English"]
},
"Bob": {
"age": 15,
"subjects": ["History", "Art", "PE"]
}
},
"Kelas 10": {
"Charlie": {
"age": 16,
"subjects": ["Physics", "Chemistry", "Biology"]
}
}
}
Di sini, kita memiliki dictionary utama school
, yang mengandung tingkatan kelas sebagai kunci. Setiap tingkatan kelas adalah dictionary lain yang mengandung nama pelajar sebagai kunci. Setiap pelajar kemudian memiliki dictionary mereka sendiri dengan informasi pribadi.
Menambah Item ke Dictionaries Bersarang di Python
Menambah item ke dictionaries bersarang adalah mudah. Kamu dapat menambah pasangan kunci-nilai baru ke dalam dictionary bersarang yang sudah ada atau membuat dictionary bersarang baru.
Mari kita tambahkan pelajar baru ke Kelas 10:
school["Kelas 10"]["Diana"] = {
"age": 15,
"subjects": ["Math", "Computer Science", "Literature"]
}
print(school["Kelas 10"])
Output:
{
'Charlie': {'age': 16, 'subjects': ['Physics', 'Chemistry', 'Biology']},
'Diana': {'age': 15, 'subjects': ['Math', 'Computer Science', 'Literature']}
}
Kami juga dapat menambah tingkatan kelas baru:
school["Kelas 11"] = {
"Eve": {
"age": 17,
"subjects": ["Economics", "Psychology", "French"]
}
}
print(school.keys())
Output:
dict_keys(['Kelas 9', 'Kelas 10', 'Kelas 11'])
Mengakses Item Dictionaries Bersarang di Python
Untuk mengakses item di dictionaries bersarang, kita menggunakan tanda kurung siku beberapa kali, masing-masing mewakili tingkat penyusunan. Mari kita ambil beberapa informasi dari dictionary school
kita:
# Mendapatkan umur Alice
alice_age = school["Kelas 9"]["Alice"]["age"]
print(f"Umur Alice: {alice_age}")
# Mendapatkan mata pelajaran Charlie
charlie_subjects = school["Kelas 10"]["Charlie"]["subjects"]
print(f"Mata pelajaran Charlie: {charlie_subjects}")
Output:
Umur Alice: 14
Mata pelajaran Charlie: ['Physics', 'Chemistry', 'Biology']
Ingat, jika kamu tidak yakin tentang struktur dictionaries bersarang kamu, kamu dapat selalu menggunakan metode get()
untuk menghindari pengecualian KeyError:
# Meng cuba untuk mendapatkan pelajar yang tidak ada
frank_age = school.get("Kelas 9", {}).get("Frank", {}).get("age", "Tidak ditemukan")
print(f"Umur Frank: {frank_age}")
Output:
Umur Frank: Tidak ditemukan
Menghapus Dictionary dari Dictionaries Bersarang
Untuk menghapus dictionary bersarang, kita menggunakan kata kunci del
. Mari kita hapus Bob dari Kelas 9:
del school["Kelas 9"]["Bob"]
print(school["Kelas 9"])
Output:
{'Alice': {'age': 14, 'subjects': ['Math', 'Science', 'English']}}
Hati-hati saat menghapus item dari dictionaries bersarang. Selalu pastikan bahwa kunci tersebut ada untuk menghindari pengecualian KeyError.
Mengulang Dictionaries Bersarang di Python
Mengulang dictionaries bersarang memerlukan pengulangan bersarang. Mari kita cetak semua informasi di dictionary school
kita:
for grade, students in school.items():
print(f"\n{grade}:")
for student, info in students.items():
print(f" {student}:")
for key, value in info.items():
print(f" {key}: {value}")
Output:
Kelas 9:
Alice:
age: 14
subjects: ['Math', 'Science', 'English']
Kelas 10:
Charlie:
age: 16
subjects: ['Physics', 'Chemistry', 'Biology']
Diana:
age: 15
subjects: ['Math', 'Computer Science', 'Literature']
Kelas 11:
Eve:
age: 17
subjects: ['Economics', 'Psychology', 'French']
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 metode yang berguna untuk bekerja dengan dictionaries bersarang:
Metode | Keterangan |
---|---|
dict.items() |
Mengembalikan objek tampilan yang berisi pasangan kunci-nilai dari dictionary |
dict.keys() |
Mengembalikan objek tampilan yang berisi kunci dari dictionary |
dict.values() |
Mengembalikan objek tampilan yang berisi nilai-nilai dari dictionary |
dict.get(key, default) |
Mengembalikan nilai untuk kunci yang ditentukan jika ada, jika tidak mengembalikan nilai default |
dict.update(other_dict) |
Memperbarui dictionary dengan elemen dari dictionary lain atau urutan 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 semua, para pelajar tercinta saya! Kita telah menjelajahi masalah-masalah tentang dictionaries bersarang di Python. Dari membuat dan menambahkan item ke mengakses, menghapus, dan mengulang mereka, kamu sekarang memiliki alat untuk bekerja dengan struktur data kompleks ini.
Seperti dengan setiap konsep pemrograman, praktek adalah kunci. Cobalah untuk membuat dictionaries bersarang kamu sendiri, mungkin sebuah katalog perpustakaan digital atau buku resep. Semakin banyak kamu bermain dengan struktur ini, semakin nyaman kamu akan menjadi.
Ingat, di dunia pemrograman, kesalahan adalah hanya kesempatan untuk belajar. Jadi jangan takut untuk bereksperimen dan membuat kesalahan - itulah cara kita semua tumbuh sebagai pemrogram. Tetap untuk mengoding, terus belajar, dan yang paling penting, bersenang-senanglah dengan Python!
Credits: Image by storyset