Cara menggunakan DICRIONARY pada Python

Menyambung tulisan pada Tipe Data dan Variabel pada Python, saya ingin menulis lebih lengkap tentang Dictionary Python. Jadi, tipe data dictionary python ini berbeda dari jenis data lainnya yang ada di python. Tidak seperti list, dan tuple yang mengunakan index untuk mengambil data tertentu. Dictionary python menggunakan key dan value, antara key dan value dipisahkan dengan titik dua (:) dan diantara keduanya dipisahkan dengan koma (,) yang semua itu dibungkus menggunakan kurung kurawal {}.

Nilai pada value bisa berisi tipe data apapun, juga termasuk dictionary. Sedangkan pada nilai key harus berupa data yang tidak bisa diubah. Setiap key tidak boleh sama dengan yang lain, sementara valeu berisi bebas.

Contoh Dictionary Python

Aturan dasar membuat kamus adalah seperti ini. var = { 'key':'value' }

Contoh dictionary python sederhana, bisa dilihat seperti berikut yang berisi tiga item

dict = { 'nama': 'Edi', 'alamat': 'nomaden', 'umur': 34 }

Dimana 'nama', 'alamat', 'umur' adalah key. Dan 'Edi', 'nomaden', 34 adalah value. Kita bisa mengambil data pada dict hanya keynya saja atau valuenya saja, juga bisa semuanya.

Item bisa berisi kamus dalam kamus

var = {
            "id": "21",
            "state": "0",
            "price": "22",
            "exc_price": "179",
            "downloads": "6",
            "is_flash": "0",
            "is_adult": "0",
            "is_full_site": "0",
            "inserted_date": "2002-05-01 00:00:00",
            "update_date": "",
            "is_real_size": "1",
            "template_type": {
                "type_id": "1",
                "type_name": "Website Templates"
            },
            "author": {
                "author_id": "421",
                "author_nick": "WT"
            },
            "package": {
                "package_id": "22"
            },
            "properties": {
                "property0": {
                    "propertyName": "Animation",
                    "propertyValues": {
                        "propertyValue0": "Static"
                    }
                },
                "property1": {
                    "propertyName": "productFamily",
                    "propertyValues": {
                        "propertyValue0": "None"
                    }
                },
                "property2": {
                    "propertyName": "template-icon",
                    "propertyValues": {
                        "propertyValue0": "icon-monster_dark"
                    }
                }
            },
            "screenshots_list": {
                "screenshot1": {
                    "uri": "https://edikartono.com",
                    "filemtime": "2006-06-30 09:06:24"
                }
             }
          }

Membuat dictionary juga bisa menggunakan constructio

print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
0 Contoh
print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
1 hasil dari variabel pets adalah
print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
2

Mengakses Dictyonary Python

Gunakan kurung siku [] untuk mengakses item

print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
3. Dan untuk mengakses item pada variabel var di atas adalah seperti ini

Jika kita menggunakan

print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
4, maka akan menghasilkan output seprti ini

print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}

Jelas ini susah untuk dibaca, maka kita coba cara lain agar hasil outputnya lebih manusiawi

print(var['id'] + ', '+ var['template_type']['type_name'])
21, Website Templates
print(var['id'] + ', '+ var['template_type']['type_name']+', '+ var['screenshots_list']['screenshot1']['uri'])
21, Website Templates, https://edikartono.com

Menggunakan Perulangan

Untuk mengakses semua isi dictionary bisa menggunakan for seperti ini

for k in var:
...     print(var[k])
... 
179
21
0

0
1
{'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}
0
{'type_name': 'Website Templates', 'type_id': '1'}
0
{'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}
2002-05-01 00:00:00
22
{'author_id': '421', 'author_nick': 'WT'}
6
{'package_id': '22'}

Atau bisa juga seperti ini

for k, v in var.items():
...     print("%s : %s" % (k, v))
... 
exc_price : 179
id : 21
is_adult : 0
update_date : 
is_full_site : 0
is_real_size : 1
screenshots_list : {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}
state : 0
template_type : {'type_name': 'Website Templates', 'type_id': '1'}
is_flash : 0
properties : {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}
inserted_date : 2002-05-01 00:00:00
price : 22
author : {'author_id': '421', 'author_nick': 'WT'}
downloads : 6
package : {'package_id': '22'}

Mengubah Nilai

Dictionary pada python bersifat mutable yang artinya nilainya bisa diubah, untuk mengubah nilai dapat menggunakan

print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
5. Penerapan dalam dunia nyata adalah. Contoh kita akan mengubah key update_date pada nama dict var

# cetak nilai update_date
print(var['update_date'])

# mengubah nilai update_date
var['update_date']='2020-04-28 00:00:00'

# cetak kembali update_date
print(var['update_date'])
2020-04-28 00:00:00

Sebelum mengubah nilai update_date saya hanya memastikan bahwa nilai awal update_date, dalam contoh ini update_date tidak ada isinya. Kemudian saya baru mengubah nilainya dan menampilkan kembali untuk memastikan isinya sudah berubah.

Menghapus Dictionary

Menggunakan fungsi

print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
6

>>> del var['properties']
>>> var
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '2020-04-28 00:00:00', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
>>> 

Anda juga bisa menghapus seluruhnya sekaligus dengan method

print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
7 contoh
print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
8

Menambah item

Untuk menambah item gunakan method

print(var)
{'exc_price': '179', 'id': '21', 'is_adult': '0', 'update_date': '', 'is_full_site': '0', 'is_real_size': '1', 'screenshots_list': {'screenshot1': {'uri': 'https://edikartono.com', 'filemtime': '2006-06-30 09:06:24'}}, 'state': '0', 'template_type': {'type_name': 'Website Templates', 'type_id': '1'}, 'is_flash': '0', 'properties': {'property1': {'propertyValues': {'propertyValue0': 'None'}, 'propertyName': 'productFamily'}, 'property0': {'propertyValues': {'propertyValue0': 'Static'}, 'propertyName': 'Animation'}, 'property2': {'propertyValues': {'propertyValue0': 'icon-monster_dark'}, 'propertyName': 'template-icon'}}, 'inserted_date': '2002-05-01 00:00:00', 'price': '22', 'author': {'author_id': '421', 'author_nick': 'WT'}, 'downloads': '6', 'package': {'package_id': '22'}}
9, apabila item yang dimasukkan ternyata sudah ada, maka method ini akan berfungsi untuk mengubah nilainya

>>> var.update({'dev':'Developer Only'})
>>> print(var['dev'])
Developer Only
>>> var.update({'dev':'For all member'})
>>> print(var['dev'])
For all member
>>> 

Akhir Kata

Setelah kita mengetahui apa saja yang bisa dilakukan dan terhadap dictionary python, maka telah bertambah pengetahuan terhadap dasar python. Dan masih banyak yang belum dipelajari di sini. Maka kita tidak henti belajar dasar python selanjutnya

Apa itu dictionary di python?

4. Dictionary Tipe data dictionary akan digunakan untuk memetakan sebuah nilai pada data ke dalam nilai lainnya. Tipe data dictionary dapat dideklarasikan dengan diawali oleh tanda kurung buka kurawal ( { ), memisahkan setiap elemen di dalamnya dengan tanda koma ( , ) dan ditutup dengan tanda kurung tutup ( } ).

Jelaskan apa yang dimaksud dengan key value pada Dictionary?

Data dictionary terdiri dari pasangan "value-key". "key" mengidentifikasi item, dan "value" menyimpan nilai item yang akan dipisahkan oleh tanda titik dua. Item dipisahkan dengan koma dan diapit tanda kurung kurawal. "key" tidak bisa diubah sedangkan "value" dapat berupa tipe data jenis apapun.

Bagaimana cara mengakses tuple?

Untuk mengakses nilai dalam Tuple, maka kamu bisa menggunakan tanda kurung siku untuk mengiris beserta indeks agar mendapatkan nilai yang tersedia pada indeks tersebut.

Apa itu append pada python?

Append. Salah satu fitur dalam array python yang cukup sering digunakan adalah fungsi append. Fungsi append ini berguna untuk menambahkan nilai array pada urutan terakhir. Fungsi ini sedikit berbeda dengan fungsi insert, dimana fungsi insert bisa menambahkan nilai array pada posisi tertentu.