Dictionary adalah tipe data yang anggotanya terdiri dari pasangan kunci:nilai (key:value). Dictionary bersifat tidak berurut (unordered) sehingga anggotanya tidak memiliki indeks. Membuat Dictionary Dictionary dibuat dengan menempatkan anggotanya di dalam tanda kurung kurawal { }, dipisahkan oleh tanda koma. Anggota dictionary terdiri dari pasangan kunci:nilai. Kunci harus bersifat unik, tidak
boleh ada dua kunci yang sama dalam dictionary. Mengakses Anggota Dictionary
Dictionary tidak menggunakan indeks. Anggota dictionary diakses dengan menggunakan kuncinya. Selain itu, bisa juga diakses dengan menggunakan fungsi get().
Dengan menggunakan fungsi get(), bila kunci tidak ada di dalam dictionary, maka akan dikembalikan None. Bila tidak menggunakan fungsi get(), maka akan terjadi error KeyError bila kunci yang hendak diakses tidak ada di dalam dictionary.
my_dict = {'nama':'Budi', 'usia':27} # output: Budi print(my_dict['nama']) # output 27 print(my_dict.get('usia')) # Mengakses kunci yang tidak tersedia menyebabkan KeyError my_dict['alamat']
Mengubah Anggota Dictionary
Dictionary bersifat mutable. Kita bisa menambahkan atau mengubah nilai dari anggotanya menggunakan operator penugasan. Bila kunci sudah ada, maka nilainya yang akan diupdate. Bila kunci belum ada, maka akan ditambahkan sebagai kunci baru.
my_dict = {'nama':'Gani', 'usia':35} # mengupdate nilai my_dict['usia'] = 36 # Output: {'nama': 'Gani', 'usia':36} print(my_dict) # menambah anggota my_dict['alamat'] = 'Medan' # output: {'alamat': 'Medan', 'nama':'Gani', 'usia':36} print(my_dict)
Menghapus Anggota Dictionary
Kita bisa menghapus anggota tertentu pada dictionary dengan menggunakan fungsi pop(). Fungsi ini menghapus anggota dengan mengembalikan kunci dari anggota tersebut.
Fungsi lain, popitem() digunakan untuk menghapus anggota acak dari dictionary. Untuk menghapus semua anggota dictionary, bisa menggunakan fungsi clear().
Selain itu kita juga bisa menggunakan kata kunci del untuk menghapus anggota tertentu atau menghapus dictionary itu sendiri.
# membuat dictionary baru pangkat = {1:1, 2:4, 3:9, 4:16, 5:25} # menghapus anggota tertentu # output: 9 print(pangkat.pop(3)) # menghapus anggota secara acak # output: (1,1) print(pangkat.popitem()) # yang tersisa adalah {2:4, 4:16, 5:25} print(pangkat) # delete 5 del pangkat[5] # output: {2:4, 4:16} print(pangkat) # menghapus semua anggota pangkat.clear() # menghapus dictionary pangkat del pangkat # Error karena pangkat sudah dihapus print(pangkat)
Metode (Fungsi) Dictionary
Dictionary memiliki beberapa metode/fungsi untuk melakukan berbagai operasi. Beberapa di antaranya sudah digunakan di atas. Selengkapnya bisa dilihat pada tabel berikut:
Metode | Deskripsi |
clear() | Menghapus semua anggota dictionary |
copy() | Mengembalikan shallow copy dari dictionary |
fromkeys(seq[, v]) | Mengembalikan dictionary baru dengan kunci-kuncinya dari seq, dan nilainya sama dengan v (defaultnya None) |
get(key[,d]) | Mengembalikan nilai dari key. Bila key tidak tersedia, kembalikan d (defaultnya None) |
items() | Mengembalikan view baru (berisi semua pasangan key,value dari dictionary |
keys() | Mengembalikan view baru (berisi semua kunci pada dictionary) |
pop(key[,d]) | Menghapus anggota yang memiliki kunci key dan mengembalikan nilai d jika kunci tidak ada dalam dictionary. Bila d tidak dibuat, dan key tidak ditemukan, akan menghasilkan KeyError |
popitem() | Menghapus anggota secara acak. Menghasilkan KeyError jika dictionary kosong |
setdefault(key[,d]) | Bila key ada dalam dictionary, kembalikan nilainya. Bila tidak, sisipkan key dengan nilai d dan kembalikan d (defaulnya None) |
update([other]) | Mengupdate dictionary dengan menambahkan anggota dari dictionary lain other, timpa (overwrite) bila ada kunci yang sama |
values() | Mengembalikan view baru (berisi semua value pada dictionary) |