Python - Dictionary dan List

Dictionary

Dictionary adalah salah satu tipe data dasar Python, yang didefinisikan sebagai hubungan satu ke satu, data yang berpasangan antara key dan value. Dalam dunia pemrograman komputer secara umum dikenal dengan istilah associative array. Implementasi paling umum dengan memanfaatkan Dictionary adalah menggunakan Hash Table.

Mendefinisikan Dictionary

>>> d = {“a”:”huruf a”, “b”:”huruf b”, “c”:”huruf c”}
>>> d
{‘a’: ‘huruf a’, ‘b’: ‘huruf b’, ‘c’: ‘huruf c’}
>>> d[“a”]
‘huruf a’
>>> d[“huruf a”]
Traceback (innermost last):  
    File “<interactive input>”, line 1, in ?
KeyError: huruf a  

Pertama, buat Dictionary baru dengan tiga elemen dan tempatkan ke variabel d. Masing-masing elemen adalah pasangan key-value, ketiga pasangan tersebut dibungkus dalam kurung kurawal. ’a’ adalah key yang berpasangan dengan value ’huruf a’, direferensikan oleh d[“a”].

Kita dapat memperoleh nilai value dengan key, tapi tidak bisa sebaliknya. Jadi, d[“a”] diperoleh value ‘huruf a’, tapi d[“huruf a”] akan membangkitkan exception karena ‘huruf a’ bukan merupakan key.

Mengubah Dictionary

>>> d
{‘a’: ‘huruf a’, ‘b’: ‘huruf b’, ‘c’: ‘huruf c’}
>>> d[“c”] = “huruf c kecil”
>>> d
{‘a’: ‘huruf a’, ‘b’: ‘huruf b’, ‘c’: ‘huruf c kecil’}
>>> d[“d”] = “huruf d”
>>> d
{‘a’: ‘huruf a’, ‘d’: ‘huruf d’, ‘b’: ‘huruf b’, ‘c’: ‘huruf c kecil’}

Dalam sebuah Dictionary tidak boleh ada dua key yang sama, maka memberikan nilai ke key yang sudah ada akan menghapus nilai yang lama. Untuk menambah key baru, Python memiliki syntax yang sama. Ini bisa menimbulkan kerancuan pada saat akan melakukan penambahan key baru, tapi ternyata hanya mengubah key yang sudah ada.

Sebagai catatan, key yang baru (’d’) terletak di bagian tengah bukan di belakang. Hal tersebut kebetulan saja, karena sebenarnya pada Dictionary memang tidak ada standar pengurutan yang berlaku.

Elemen dalam Dictionary juga bisa menggunakan tipe data selain string. Bisa integer, object, bahkan Dictionary itu sendiri. Juga, tidak harus menggunakan satu macam tipe data.

>>> d
{‘a’: ‘huruf a’, ‘b’: ‘huruf b’, ‘c’: ‘huruf c’}
>>> d[“angka satu”] = 1
>>> d
{‘a’: ‘huruf a’, ‘b’: ‘huruf b’, ‘c’: ‘huruf c’, ‘angka satu’: 1}
>>> d[2] = “angka dua”
>>> d
{‘a’: ‘huruf a’, ‘b’: ‘huruf b’, ‘c’: ‘huruf c’, 2: ‘angka dua’, ‘angka satu’: 1}

Menghapus Isi Dictionary

>>> d
{‘a’: ‘huruf a’, ‘b’: ‘huruf b’, ‘c’: ‘huruf c’, 2: ‘angka dua’, ‘angka satu’: 1}
>>> del d[“a”]
>>> d
{‘b’: ‘huruf b’, ‘c’: ‘huruf c’, 2: ‘angka dua’, ‘angka satu’: 1}
>>> d.clear()
>>> d
{}

Syntax del untuk menghapus elemen dalam Dictionary satu-persatu berdasarkan key–nya, sedangkan clear menghapus semua elemen yang ada. Kurung kurawal kosong menandakan itu adalah sebuah Dictionary tanpa elemen.

List

List pada Python itu hampir mirip seperti array dalam bahasa pemrograman lain. Namun berbeda dengan array, List memiliki fitur-fitur yang lebih kompleks. List bisa terdiri dari berbeda-beda tipe data, ditambah dan dikurangi sesuka hati, dipecah-pecah, disambung dengan List lain, dan juga bisa dikenakan operator matematika.

Persamaannya dengan array adalah List selalu dimulai dari indeks 0.

Mendefinisikan List

>>> li = [“a”, “b”, “kucing”, “z”, “contoh list”]
>>> li
[‘a’, ‘b’, ‘kucing’, ‘z’, ‘contoh list’]
>>> li[0]
‘a’
>>> li[4]
‘contoh list’

Berbeda dengan Dictionary, elemen-elemen dalam List dibungkus dengan kurung kotak dan tetap mempertahankan urutannya seperti awal pendefinisiannya.

Indeks pada List bisa juga bernilai negatif. Indeks negatif mengakses elemen di dalam List dari belakang. Elemen paling akhir dari List selalu berindeks -1.

List Berindeks Negatif

>>> li
[‘a’, ‘b’, ‘kucing’, ‘z’, ‘contoh list’]
>>> li[-1]
‘contoh list’
>>> li[-3]
‘kucing’

Bagi yang bingung dengan indeks negatif, ada sebuah “jembatan keledai” yang membantu mengkonversi indeks negatif menjadi positif sebagai berikut: li[-n] = li[len(li) - n]. Jadi li[-3] = li[5 - 3] = li[2].

Author

Setiyabudi

Tepung terigu, minyak sayur, tepung tapioka, garam, pemantap (nabati dan natrium tripolifosfat) pengatur keasaman, mineral (zat besi), pewarna, antioksidan *lho kok ini isinya komposisi mi instan?*

comments powered by Disqus