Python For Loop (Dictionary)
Reno Iqbalsah
11/05/2023
Bagian ini membahas penggunaan for loop untuk mengiterasi tipe data dictionary dalam bahasa pemrograman Python.
Dictionary juga merupakan salah satu tipe data iterable dalam bahasa pemrograman Python, hanya saja perlakuannya sedikit berbeda dengan iterables yang lainnya, karena dict
menggunakan key
- value
pair untuk menyatakan elemen-elemen dalam objek tersebut.
Iterasi Langsung pada Sebuah Dictionary
Jika kita melakukan iterasi pada sebuah dict
, maka kita akan mendapatkan seluruh key
dalam dictionary tersebut.
mafa = {
"Rudi" : "nasi goreng",
"Rani" : "rendang",
"Rendi" : "soto ayam"
}
for nama in mafa:
print(nama, end=" ")
# output : Rudi Rani Rendi
Menggunakan Metode .keys()
Metode ini berlaku sama persis seperti saat kita mengiterasi sebuah dictionary secara langsung. Hanya saja, metode .keys()
akan mengambil seluruh key
pada sebuah dict
dan mengubahnya menjadi list
.
mafa = {
"Rudi" : "nasi goreng",
"Rani" : "rendang",
"Rendi" : "soto ayam"
}
print(mafa.keys())
for nama in mafa.keys():
print(nama, end=" ")
# output :
# dict_keys(["Rudi", "Rani", "Rendi"])
# Rudi Rani Rendi
Selain kode di atas, kita juga dapat memanfaatkan iterasi keys
dari sebuah dict
untuk mendapatkan values
-nya. Kita dapat sedikit memodifikasi for loop di atas menjadi
seperti di bawah ini.
mafa = {
"Rudi" : "nasi goreng",
"Rani" : "rendang",
"Rendi" : "soto ayam"
}
for nama in mafa.keys():
print(f"{nama} suka makan {mafa[nama]}")
# output :
# Rudi suka makan nasi goreng
# Rani suka makan rendang
# Rendi suka makan soto ayam
Kode di atas juga dapat juga digunakan dengan mengiterasi dict
secara langsung tanpa menggunakan metode .keys()
Menggunakan Metode .values()
Dengan metode .values()
, kita akan mendapatkan seluruh value
dari sebuah dictionary.
mafa = {
"Rudi" : "nasi goreng",
"Rani" : "rendang",
"Rendi" : "soto ayam"
}
for makan in mafa.values():
print(makan)
# output :
# nasi goreng
# rendang
# soto ayam
Menggunakan Metode .items()
Metode .items()
mengubah sebuah dictionary menjadi list
berisi tuple
yang di dalamnya memuat pasangan key
dan value
dari sebuah dict
.
Agar lebih mudah, coba jalankan kode ini.
mafa = {
"Rudi" : "nasi goreng",
"Rani" : "rendang",
"Rendi" : "soto ayam"
}
print(mafa.items())
# output : dict_items([("Rudi", "nasi goreng"), ("Rani", "rendang"), ("Rendi", "soto ayam")])
Lalu, bagaimana cara kita mendapatkan elemen key
dan value
dari dictionary tersebut? Kita dapat melakukannya dengan menggabungkan
for loop dengan tuple unpacking.
mafa = {
"Rudi" : "nasi goreng",
"Rani" : "rendang",
"Rendi" : "soto ayam"
}
for name, food in mafa.items():
print(f"{name} suka makan {food}")
# output :
# Rudi suka makan nasi goreng
# Rani suka makan rendang
# Rendi suka makan soto ayam
Pada kode di atas, notasi name, food
akan me-refer pada setiap tuple
hasil dari metode mafa.items()
dan melakukan unpacking untuk masing-masing tuple
.
Proses iterasi terjadi seperti di bawah ini:
- Pada iterasi pertama:
name, food = ("Rudi", "nasi goreng")
- Pada iterasi kedua:
name, food = ("Rani", "rendang")
- Pada iterasi ketiga:
name, food = ("Rendi", "soto ayam")
Challange: Naik Gaji
PT Mager Digital Solutions ingin menaikkan gaji bagi software engineer dan data scientist karena sudah memberikan kinerja yang sangat baik. Daftar pegawai pada PT MDS adalah sebagai berikut:
Nama | Jabatan |
---|---|
Reno | CEO |
Shan | Software Engineer |
Lakusae | Data Scientist |
Rayya | CFO |
Masukkan data tersebut ke dalam sebuah dict
, dan keluarkan output:
"Gaji {nama pegawai} tahun ini {naik/tidak naik}"
Gunakan metode manapun yang menurut kalian paling mudah. Lihat jawabannya di sini: