Dasar Kamus Python: Kunci, Nilai, dan Akses
Previous Page Next Page
Setiap kunci dipisahkan dari nilainya oleh titik dua (:), item-item dipisahkan oleh koma, dan keseluruhan diapit dalam kurung kurawal. Kamus kosong tanpa item ditulis dengan hanya dua kurung kurawal, seperti ini: {}.
Kunci unik dalam kamus sementara nilai mungkin tidak. Nilai kamus dapat berupa tipe apa pun, tetapi kunci harus bertipe data immutable seperti string, angka, atau tuple.
Mengakses Nilai dalam Kamus
Untuk mengakses elemen kamus, Anda dapat menggunakan kurung siku yang familiar bersama dengan kunci untuk mendapatkan nilainya. Berikut adalah contoh sederhana −
Live Demo
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} print "dict['Name']: ", dict['Name'] print "dict['Age']: ", dict['Age'] Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −
dict['Name']: Zara dict['Age']: 7
Jika kita mencoba mengakses item data dengan kunci, yang bukan bagian dari kamus, kita mendapatkan error sebagai berikut −
Live Demo
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} print "dict['Alice']: ", dict['Alice'] Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −
dict['Alice']: Traceback (most recent call last): File "test.py", line 4, in <module> print "dict['Alice']: ", dict['Alice']; KeyError: 'Alice'
Memperbarui Kamus
Anda dapat memperbarui kamus dengan menambahkan entri baru atau pasangan kunci-nilai, memodifikasi entri yang ada, atau menghapus entri yang ada seperti yang ditunjukkan dalam contoh sederhana di bawah −
Live Demo
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} dict['Age'] = 8; # update existing entry dict['School'] = "DPS School"; # Add new entry print "dict['Age']: ", dict['Age'] print "dict['School']: ", dict['School'] Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −
dict['Age']: 8 dict['School']: DPS School
Menghapus Elemen Kamus
Anda dapat menghapus elemen kamus individual atau membersihkan seluruh isi kamus. Anda juga dapat menghapus seluruh kamus dalam satu operasi.
Untuk secara eksplisit menghapus seluruh kamus, cukup gunakan pernyataan del. Berikut adalah contoh sederhana −
Live Demo
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} del dict['Name']; # remove entry with key 'Name' dict.clear(); # remove all entries in dict del dict ; # delete entire dictionary print "dict['Age']: ", dict['Age'] print "dict['School']: ", dict['School'] Ini menghasilkan hasil berikut. Perhatikan bahwa exception diangkat karena setelah del dict kamus tidak lagi ada −
dict['Age']: Traceback (most recent call last): File "test.py", line 8, in <module> print "dict['Age']: ", dict['Age']; TypeError: 'type' object is unsubscriptable
Note − del() method dibahas dalam bagian selanjutnya.
Properti Kunci Kamus
Nilai kamus tidak memiliki pembatasan. Mereka dapat berupa objek Python apa pun, baik objek standar maupun objek yang didefinisikan pengguna. Namun, yang sama tidak berlaku untuk kunci.
Ada dua poin penting untuk diingat tentang kunci kamus −
(a) Lebih dari satu entri per kunci tidak diizinkan. Ini berarti tidak ada kunci duplikat yang diizinkan. Ketika kunci duplikat ditemukan selama penugasan, penugasan terakhir yang menang. Misalnya −
Live Demo
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'} print "dict['Name']: ", dict['Name'] Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −
dict['Name']: Manni
(b) Kunci harus immutable. Ini berarti Anda dapat menggunakan string, angka, atau tuple sebagai kunci kamus tetapi sesuatu seperti ['key'] tidak diizinkan. Berikut adalah contoh sederhana −
Live Demo
#!/usr/bin/python dict = {['Name']: 'Zara', 'Age': 7} print "dict['Name']: ", dict['Name'] Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −
Traceback (most recent call last): File "test.py", line 3, in <module> dict = {['Name']: 'Zara', 'Age': 7}; TypeError: unhashable type: 'list' Fungsi dan Metode Kamus Bawaan
Python menyertakan fungsi kamus berikut −
| Sr.No. | Fungsi dengan Deskripsi |
| 1 | cmp(dict1, dict2) Membandingkan elemen dari kedua kamus. |
| 2 | len(dict) Memberikan panjang total kamus. Ini akan sama dengan jumlah item dalam kamus. |
| 3 | str(dict) Menghasilkan representasi string yang dapat dicetak dari kamus |
| 4 | type(variable) Mengembalikan tipe variabel yang diteruskan. Jika variabel yang diteruskan adalah kamus, maka akan mengembalikan tipe kamus. |
Python menyertakan metode kamus berikut −
| Sr.No. | Metode dengan Deskripsi |
| 1 | dict.clear() Menghapus semua elemen kamus dict |
| 2 | dict.copy() Mengembalikan salinan dangkal dari kamus dict |
| 3 | dict.fromkeys() Membuat kamus baru dengan kunci dari seq dan nilai set ke value. |
| 4 | dict.get(key, default=None) Untuk key kunci, mengembalikan nilai atau default jika kunci tidak ada dalam kamus |
| 5 | dict.has_key(key) Mengembalikan true jika kunci dalam kamus dict, false sebaliknya |
| 6 | dict.items() Mengembalikan daftar pasangan (kunci, nilai) tuple dari dict |
| 7 | dict.keys() Mengembalikan daftar kunci kamus dict |
| 8 | dict.setdefault(key, default=None) Mirip dengan get(), tetapi akan mengatur dict[key]=default jika key belum ada dalam dict |
| 9 | dict.update(dict2) Menambahkan pasangan kunci-nilai kamus dict2 ke dict |
| 10 | dict.values() Mengembalikan daftar nilai kamus dict |