Apa itu tipe data dictionary pada python?

Apa itu tipe data dictionary pada python?
Apa itu dictionary ? dan apa pengertiannya ?. Sebelum kita membahas lebih jauh dictionary dalam pemrograman python ada baiknya kita memahami dictionary secara etimologi.

Dictionary dalam bahasa Indonesia adalah kamus, jika kita perhatikan isi dari kamus maka akan terlihat setiap kata akan mempunyai arti atau penjelasan. Sehingga kata juga bisa disebut sebagai kunci (key) dan penjelasannya disebut nilai (value).

Berdasarkan analogi tersebut maka dapat didefinisikan dictionary adalah kumpulan data yang mempunyai penanda (kunci/key) singular (unique).

Dictionary dalam Bahasa Pemrograman Python

Dictionary dalam Python adalah salah satu dari sekian tipe data yang ada dalam python itu sendiri. Ada banyak tipe data dalam python salah satunya yang sudah dibahas adalah list. Tipe data list dapat menyimpan banyak nilai, akan tetapi tidak memiliki penanda disetiap nilainya. Perhatikan kode ini:

list_saya = [1, 2, 'jeruk', 'mangga']

dict_saya = {'nama': 'dhani', 'agama': 'islam'}

Didalam tipe data list kita juga dapat menulis tipe data dictionary:

list_saya = [1, 2, 'jeruk', 'mangga', {'buah_1': 'jeruk', 'buah_2': 'mangga'}]

Begitu juga sebaliknya, kita dapat menulis tipe data list didalam dictionary

dict_saya = {'buah_1': 'jeruk', 'buah_2': 'mangga', 'list_saya': [1, 2, 'jeruk', 'mangga']}

Membuat dictionary dengan gaya konstrukror atau form

data = dict(nama='dhani', agama='islam')

Mengakses Dictionary

Setelah kita memiliki data berupa dictionary, lantas bagaimana cara kita agar bisa mengoperasikan nilai didalam dictionary tersebut?

dict_saya = {'nama': 'dhani', 'agama': 'islam'}

print(dict_saya['nama'])

dhani #output


print(dict_saya) 

{'nama': 'dhani', 'agama': 'islam'} #output
dict_saya = {
    "nama": "dhani",
    "agama": "islam",
    "istri": [
        "tini"
    ],
    "anak": [
        "ariqa",
        "khalid",
        "humaira"
    ],
    "pendidikan": {
        "sd": "sekolah dasar negeri aceh",
        "smp": "sekolah dasar negeri medan",
        "sma": "sekolah menengah atas medan"
    },
    "pemarah": False
}


print(f"Perkenalkan nama saya {dict_saya['nama']}, Saya memiliki istri {len(dict_saya['istri'])} yang bernama {dict_saya['istri'][0]}")

Perkenalkan nama saya dhani, Saya memiliki istri 1 yang bernama tini #output

Output diatas menggunakan f string Anda dapat membaca disini. Fungsi len adalah menghitung banyaknya nilai (value) dalam hal ini menghitung banyaknya isi didalam list.

Untuk mengambil kunci (key) dictionary mempunyai methods yaitu keys() untuk menampilkan key kita cukup menulis nama_dictionary.key() dan hasilnya masih berupa objeck dari dictionary yang harus dimasukkan kedalam fungsi list.

dict_saya = {
    "nama": "dhani",
    "agama": "islam",
    "istri": [
        "tini"
    ],
    "anak": [
        "ariqa",
        "khalid",
        "humaira"
    ],
    "pendidikan": {
        "sd": "sekolah dasar negeri aceh",
        "smp": "sekolah dasar negeri medan",
        "sma": "sekolah menengah atas medan"
    },
    "pemarah": False
}

print(dict_saya.keys())

dict_keys(['nama', 'agama', 'istri', 'anak', 'pendidikan', 'pemarah']) #output


kunci = dict_saya.keys()

print(type(kunci))

<class 'dict_keys'> #output


list_kunci = list(kunci)

print(list_kunci)

['nama', 'agama', 'istri', 'anak', 'pendidikan', 'pemarah'] #output

Mengganti Dictionaries

Setelah kita membuat dictionary terkadang untuk kasus tertentu kita harus mengganti nilainya sesuai keperluan kita. Bagaimana cara kita mengganti nilai (value) didalam dictionary? Berikut contohnya:

dict_saya = {
    "nama": "dhani",
    "agama": "islam",
    "istri": [
        "tini"
    ],
    "anak": [
        "ariqa",
        "khalid",
        "humaira"
    ],
    "pendidikan": {
        "sd": "sekolah dasar negeri aceh",
        "smp": "sekolah dasar negeri medan",
        "sma": "sekolah menengah atas medan"
    },
    "pemarah": False
}

dict_saya['nama'] = 'Ramadhani'

dict_saya['istri'][0] = 'Martini'

dict_saya['anak'][1] = 'Khalid Albardani' 

print(dict_saya)

{
    "nama": "Ramadhani",
    "agama": "islam",
    "istri": [
        "Martini"
    ],
    "anak": [
        "ariqa",
        "Khalid Albardani",
        "humaira"
    ],
    "pendidikan": {
        "sd": "sekolah dasar negeri aceh",
        "smp": "sekolah dasar negeri medan",
        "sma": "sekolah menengah atas medan"
    },
    "pemarah": False
} #output

Menghapus Dictionaries

Kita sudah membuat dan mengganti dictionary, bagaimana jika kita ingin menghapusnya?

dict_saya = {
    "nama": "dhani",
    "agama": "islam",
    "istri": [
        "tini"
    ],
    "anak": [
        "ariqa",
        "khalid",
        "humaira"
    ],
    "pendidikan": {
        "sd": "sekolah dasar negeri aceh",
        "smp": "sekolah dasar negeri medan",
        "sma": "sekolah menengah atas medan"
    },
    "pemarah": False
}

del dict_saya['pendidikan']

print(dict_saya)

{
    "nama": "dhani",
    "agama": "islam",
    "istri": [
        "tini"
    ],
    "anak": [
        "ariqa",
        "khalid",
        "humaira"
    ],
    "pemarah": False
} #output

Methods pada Dictionary

Kelebihan Python adalah kemudahan dalam penulisan syntaks. Pada tipe data dictionary kita dapat menggunakan fungsi yang ada didalam class dictionary.

print(dir(dict))

['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']

Anda dapat melihat isi didalam class dictionary dan menggunakannya sesuai kebutuhan Anda. Perhatikan contoh dibawah ini

dict_saya = {
    "nama": "dhani",
    "agama": "islam",
    "istri": [
        "tini"
    ],
    "anak": [
        "ariqa",
        "khalid",
        "humaira"
    ],
    "pendidikan": {
        "sd": "sekolah dasar negeri aceh",
        "smp": "sekolah dasar negeri medan",
        "sma": "sekolah menengah atas medan"
    },
    "pemarah": False
}

print(dict_saya.get('nama'))

dhani #output


print(dict_saya.items())

dict_items([('nama', 'dhani'), ('agama', 'islam'), ('istri', ['tini']), ('anak', ['ariqa', 'khalid', 'humaira']), ('pemarah', False)]) #output


print(list(dict_saya.items()))

[('nama', 'dhani'), ('agama', 'islam'), ('istri', ['tini']), ('anak', ['ariqa', 'khalid', 'humaira']), ('pemarah', False)]


print(dict_saya.get('teman'))

None


media = {'media': {'web': 'https://blog.dhanipro.com', 'facebook': 'dhanipro.com'}}

dict_saya.update(media)

{
    "nama": "dhani",
    "agama": "islam",
    "istri": [
        "tini"
    ],
    "anak": [
        "ariqa",
        "khalid",
        "humaira"
    ],
    "pendidikan": {
        "sd": "sekolah dasar negeri aceh",
        "smp": "sekolah dasar negeri medan",
        "sma": "sekolah menengah atas medan"
    },
    "pemarah": False,
    "media": {
        "web": "https://blog.dhanipro.com",
        "facebook": "dhanipro.com"
    }
}


print(len(dict_saya))

7

Jika ingin menjadi programmer Python maka dictionary ini adalah suatu kewajiban untuk dipahami. Untuk aplikasi yang dibutuhkan industri tentu penggunaan dictionary lebih rumit dari contoh diatas.

Apa itu dictionary di Python?

Dictionary adalah tipe data pada python yang berfungsi untuk menyimpan kumpulan data/nilai dengan pendekatan “key-value”.

Apa yang kamu pahami tentang tipe data dictionary?

Tipe data dictionary adalah tipe data array dimana key atau index dari array bisa berbentuk string, tidak hanya number saja. Dalam bahasa pemrograman lain (seperti PHP) dictionary ini dikenal juga dengan sebutan associative array.

Apa itu tipe data pada Python?

Tipe data adalah suatu media atau memori pada komputer yang digunakan untuk menampung informasi. Python sendiri mempunyai tipe data yang cukup unik bila kita bandingkan dengan bahasa pemrograman yang lain.

Apakah dictionary memiliki sebuah index?

Dictionary bersifat tidak berurut (unordered) sehingga anggotanya tidak memiliki indeks. Dictionary dibuat dengan menempatkan anggotanya di dalam tanda kurung kurawal { }, dipisahkan oleh tanda koma. Anggota dictionary terdiri dari pasangan kunci:nilai .