[Dasar Python]: Ini Bukan Sembarang Kamus, Ini Dictionary Python!

Sejauh ini kita telah belajar menggunakan indeks dan irisan untuk mengakses data Python bertipe String, List, dan Tuple. Apakah bisa kita mengakses data cukup menggunakan sebuah kunci (key), bukan indeks? Jawabannya adalah BISA! Gunakan saja tipe data Dictionary Python.

Dictionary menggunakan beberapa kunci untuk mengindeks nilai-nilai yang ada di dalamnya. Kunci tidak harus berupa angka. Kunci dapat berupa tipe data immutable lainnya, yaitu String, Number, dan Tuple. Tuple dapat digunakan sebagai kunci jika di dalam Tuple tersebut tidak terdapat obyek yang bersifat mutable. Dengan kata lain, Dictionary Python merupakan kumpulan pasangan kunci:nilai (selanjutnya kita sebut: key-value) yang tidak berurutan. Dictionary Python ini sama halnya dengan array-asosiatif atau hash-table di pemrograman Perl.

Suatu kunci (key) pada Dictionary bersifat unik, yang artinya satu kunci hanya mempunyai satu nilai. Aturan penulisannya berupa key:value. Sebuah Dictionary ditandai dengan kurung kurawal “{}”. Setiap pasangan key:value dipisahkan dengan tanda koma. Berikut contohnya,

>>> kamus = {}
>>> kamus1 = {'nama':'azzam', 'nim':1234, 'jurusan':'fisika'}
>>> kamus1
{'nama': 'azzam', 'jurusan': 'fisika', 'nim': 1234}
>>> kamus
{}

Pada contoh di atas, kita membuat sebuah Dictionary kosong kamus yang hanya ditandai oleh tanda kurung kurawal dan sebuah Dictionary kamus1 berisi tiga pasang key:value yang dipisahkan dengan tanda koma.

Untuk mengakses sebuah value dari Dictionary, kita dapat menggunakan key yang berhubungan dengan value tersebut. Berikut contohnya,

>>> kamus1['jurusan']
'fisika'
>>> kamus1['nim']
1234

Pada contoh di atas, terlihat jelas bahwa value ‘fisika’ dapat diakses dengan menggunakan key ‘jurusan’. Ketika kita menggunakan sebuah key dalam Dictionary, maka value yang sesuai akan ditampilkan. Dengan kata lain, kita bisa mengakses data dari Dictionary dengan menggunakan suatu key yang berhubungan dengan data tersebut. Jika kita mencoba menggunakan key yang tidak ada dalam Dictionary, maka pesan kesalahan akan dimunculkan. Berikut contohnya,

>>> kamus1['alamat']
Traceback (most recent call last):
File "", line 1, in
kamus1['alamat']
KeyError: 'alamat'

Dictionary bersifat mutable. Pasangan key:value dapat dengan mudah kita tambahkan berulang kali. Pada Dictionary, sebuah value baru dapat ditambahkan atau diubah dengan cara mengakses sebuah key dan memberinya value baru.

>>> kamus1['alamat'] = 'malang'
>>> kamus1
{'nama': 'azzam', 'alamat': 'malang', 'jurusan': 'fisika', 'nim': 1234}

Pada contoh di atas, karena ‘alamat’ bukanlah key yang terdapat dalam kamus1, maka pasangan key:value akan ditambahkan ke kamus1 dengan key = ‘alamat’ dan value = ‘malang’.

Semua key yang ada dalam Dictionary tidak harus mempunyai tipe data yang sama. Marilah kita lihat contoh di bawah ini dimana key yang ada saling berbeda tipe datanya.

>>> tesDict = {'2':1234, 2:'abc', 6.5:'cukup'}
>>> tesDict
{2: 'abc', '2': 1234, 6.5: 'cukup'}

Dari contoh di atas, key pertama yaitu ‘2’ merupakan string yang dihubungkan dengan value 1234 yang bertipe integer, key kedua yaitu 2 bertipe integer dan dihubungkan dengan sebuah string ‘abc’, dan key yang ketiga adalah sebuah bilangan real 6.5 yang dipasangkan dengan sebuah string ‘cukup’.

Jika kita ingin mengambil semua key yang ada dalam Dictionary, kita dapat menggunakan metode keys(). Metode keys() akan mengembalikan sebuah list key. Berikut contohnya,

>>> tesDict.keys()
dict_keys([2, '2', 6.5])

Panjang sebuah Dictionary sama dengan banyaknya pasangan key:value yang ada di dalamnya.

>>> len(tesDict)
3

Elemen-elemen yang ada di dalam Dictionary dapat kita hapus dengan menggunakan pernyataan del. Kita juga bisa menggunakan pernyataan del untuk menghapus Dictionary secara keseluruhan. Kita juga bisa membersihkan Dictionary dengan menggunakan metode clear().

>>> del kamus1['nim']
>>> kamus1
{'nama': 'azzam', 'alamat': 'malang', 'jurusan': 'fisika'}
>>> kamus1.clear()
>>> kamus1
{}
>>> del kamus1
>>> kamus1
Traceback (most recent call last):
File "", line 1, in
kamus1
NameError: name 'kamus1' is not defined

Wow! Akhirnya tuntas sudah pembahasan kita tentang tipe data di Python. Salut untuk Anda yang sampai detik ini masih semangat belajar Python!

Salam PythonMania!

10 comments

  1. gan , bisa bwt gini:
    misal di input 82 , maka output= “delapan puluh-dua”
    misal di input 789, maka output = “tujuh ratus – delapan puluh – sembilan”

  2. gan mau nanya,
    dengan script yang sama kenapa urutan output nya bisa beda beda ketika di run ?
    misalnya dengan script yang sama outputnya seperti ini:
    nama kota nim
    kota nama nim
    nim kota nama
    kenapa ya gan kok bisa beda beda urutannya waktu d run?
    thx gan , semangatt !!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s