Cara menggunakan update existing dictionary python

Pada pertemuan kali ini kita akan membahas salah satu dari 4 tipe data kolektif pada python yaitu: dictionary.

Apa itu dictionary? Sebelum kita membahas pengertiannya, silakan teman-teman perhatikan kode program berikut ini:

pertemuan_hari_ini = {
  "judul": "Belajar Dictionary Pada Python 3",
  "tanggal": "01 Februari 2021",
  "kategori": [
    "Python", "Python Dasar"
  ],
  "page_views": 10,
  "published": True,
  "share_count": {
    "facebook": 0,
    "twitter": 2
  }
}

Apakah kalian memahami fungsi-fungsinya?

Saya yakin sebagian besar dari kalian langsung bisa memahami secara garis besar apa tugas dan isi dari variabel

Menu Masakan Enak Tradisional
2.

Variabel tersebut menyimpan beberapa informasi sekaligus seperti

Menu Masakan Enak Tradisional
3,
Menu Masakan Enak Tradisional
4,
Menu Masakan Enak Tradisional
5 (yang berupa list),
Menu Masakan Enak Tradisional
6, dan sebagainya.

Pengertian Dictionary

Lalu, apa sebenarnya dictionary itu?

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

Perhatikan contoh di atas, variabel

Menu Masakan Enak Tradisional
2 adalah dictionary.

Ia memiliki 6 buah “key” atau “atribut”, yaitu:

  1. Menu Masakan Enak Tradisional
    
    3
  2. Menu Masakan Enak Tradisional
    
    4
  3. Menu Masakan Enak Tradisional
    
    5
  4. Menu Masakan Enak Tradisional
    
    6
  5. # cara pertama
    buku = {
      "judul": "Daun Yang Jatuh Tidak Pernah Membenci Angin",
      "penulis": "Tere Liye"
    }
    
    # cara kedua
    buku = dict(
      judul="Daun Yang Jatuh Tidak Pernah Membenci Angin",
      penulis="Tere Liye"
    )
    
    2
  6. dan
    # cara pertama
    buku = {
      "judul": "Daun Yang Jatuh Tidak Pernah Membenci Angin",
      "penulis": "Tere Liye"
    }
    
    # cara kedua
    buku = dict(
      judul="Daun Yang Jatuh Tidak Pernah Membenci Angin",
      penulis="Tere Liye"
    )
    
    3 (bahkan value dari
    # cara pertama
    buku = {
      "judul": "Daun Yang Jatuh Tidak Pernah Membenci Angin",
      "penulis": "Tere Liye"
    }
    
    # cara kedua
    buku = dict(
      judul="Daun Yang Jatuh Tidak Pernah Membenci Angin",
      penulis="Tere Liye"
    )
    
    3 sendiri adalah sebuah dictionary 😂)

Yang mana masing-masing atribut di atas memiliki informasi/nilai sendiri-sendiri sesuai dengan namanya.

Dictionary sendiri memiliki dua buah komponen inti:

  1. Yang pertama adalah key, ia merupakan nama atribut suatu item pada dictionary.
  2. Yang kedua adalah value, ia adalah nilai yang disimpan pada suatu atribut.

Sifat Dictionary Items

Dictionary items memiliki 3 sifat, yaitu:

  1. # cara pertama
    buku = {
      "judul": "Daun Yang Jatuh Tidak Pernah Membenci Angin",
      "penulis": "Tere Liye"
    }
    
    # cara kedua
    buku = dict(
      judul="Daun Yang Jatuh Tidak Pernah Membenci Angin",
      penulis="Tere Liye"
    )
    
    5 - tidak berurutan
  2. # cara pertama
    buku = {
      "judul": "Daun Yang Jatuh Tidak Pernah Membenci Angin",
      "penulis": "Tere Liye"
    }
    
    # cara kedua
    buku = dict(
      judul="Daun Yang Jatuh Tidak Pernah Membenci Angin",
      penulis="Tere Liye"
    )
    
    6 - bisa diubah
  3. # cara pertama
    buku = {
      "judul": "Daun Yang Jatuh Tidak Pernah Membenci Angin",
      "penulis": "Tere Liye"
    }
    
    # cara kedua
    buku = dict(
      judul="Daun Yang Jatuh Tidak Pernah Membenci Angin",
      penulis="Tere Liye"
    )
    
    7 - alias tidak bisa menerima dua keys yang sama

Unordered artinya ia tidak berurutan, sehingga key/atribut yang pertama kali kita definisikan, tidak berarti dia akan benar-benar menjadi yang “pertama” dibandingkan dengan key yang lainnya. Juga, unordered berarti tidak bisa diakses menggunakan index (integer) sebagaimana halnya list.

Sedangkan changeable artinya kita bisa kita mengubah value yang telah kita masukkan ke dalam sebuah dictionary. Hal ini berbeda dengan tipe data set mau pun tuple yang mana keduanya bersifat immutable alias tidak bisa diubah.

Dan yang terakhir, dictionary tidak bisa memiliki lebih dari satu key yang sama karena ia bersifat unique. Sehingga jika ada dua buah key yang sama, key yang didefinisikan terakhir akan menimpa nilai dari key yang didefinisikan lebih awal.

Perhatikan contoh berikut:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))

Kode program di atas akan menghasilkan output:

Menu Masakan Enak Tradisional

Kita bisa perhatikan bahwa pada dictionary

# cara pertama
buku = {
  "judul": "Daun Yang Jatuh Tidak Pernah Membenci Angin",
  "penulis": "Tere Liye"
}

# cara kedua
buku = dict(
  judul="Daun Yang Jatuh Tidak Pernah Membenci Angin",
  penulis="Tere Liye"
)
8 di atas, terdapat dua buah item dengan nama “judul”, akan tetapi ketika kita tampilkan hasilnya hanya nilai yang terakhir kita masukkan.

Tipe Data pada Items Dictionary

Selain 3 sifat yang telah disebutkan, item pada dictionary juga bisa menerima berbagai macam tipe data, mulai dari tipe data asli mau pun tipe data terusan seperti objek.

Yang artinya, dictionary juga bisa memiliki value berupa dictionary juga.

Dan ini telah kita lihat langsung contohnya pada variabel

Menu Masakan Enak Tradisional
2 di kode program yang paling atas.

Cara Membuat Dictionary

Berikutnya adalah bagaimana cara membuat dictionary pada python.

Untuk membuatnya, terdapat 2 cara:

  1. Yang pertama dengan tanda kurung kurawal
    pertemuan_hari_ini = {
      "judul": "Belajar Dictionary Pada Python 3",
      "tanggal": "01 Februari 2021",
      "kategori": [
        "Python", "Python Dasar"
      ],
      "page_views": 10,
      "published": True,
      "share_count": {
        "facebook": 0,
        "twitter": 2
      }
    }
    
    0.
  2. Dan yang kedua bisa menggunakan fungsi atau konstruktor
    pertemuan_hari_ini = {
      "judul": "Belajar Dictionary Pada Python 3",
      "tanggal": "01 Februari 2021",
      "kategori": [
        "Python", "Python Dasar"
      ],
      "page_views": 10,
      "published": True,
      "share_count": {
        "facebook": 0,
        "twitter": 2
      }
    }
    
    1.

Perhatikan contoh berikut:

# cara pertama
buku = {
  "judul": "Daun Yang Jatuh Tidak Pernah Membenci Angin",
  "penulis": "Tere Liye"
}

# cara kedua
buku = dict(
  judul="Daun Yang Jatuh Tidak Pernah Membenci Angin",
  penulis="Tere Liye"
)

Cara Mengakses Item Pada Dictionary

Kita bisa mengakses item pada dictionary dengan dua cara:

  • dengan menggunakan kurung siku (
    pertemuan_hari_ini = {
      "judul": "Belajar Dictionary Pada Python 3",
      "tanggal": "01 Februari 2021",
      "kategori": [
        "Python", "Python Dasar"
      ],
      "page_views": 10,
      "published": True,
      "share_count": {
        "facebook": 0,
        "twitter": 2
      }
    }
    
    2)
  • atau dengan menggunakan fungsi
    pertemuan_hari_ini = {
      "judul": "Belajar Dictionary Pada Python 3",
      "tanggal": "01 Februari 2021",
      "kategori": [
        "Python", "Python Dasar"
      ],
      "page_views": 10,
      "published": True,
      "share_count": {
        "facebook": 0,
        "twitter": 2
      }
    }
    
    3

Perhatikan contoh berikut:

pertemuan_hari_ini = {
  "judul": "Belajar Dictionary Pada Python 3",
  "tanggal": "01 Februari 2021",
  "kategori": [
    "Python", "Python Dasar"
  ],
  "page_views": 10,
  "published": True,
  "share_count": {
    "facebook": 0,
    "twitter": 2
  }
}

Kita bisa mengaksesnya dengan:

print('Judul:', pertemuan_hari_ini.get('judul'))
# atau
print('Tanggal:', pertemuan_hari_ini['tanggal'])

# bisa menggunakan fungsi berantai untuk dictionary bertingkat
print('Facebook share:', pertemuan_hari_ini.get('share_count').get('facebook'))
# bisa juga dengan kurung siku dua-duanya
print('Twitter share:', pertemuan_hari_ini['share_count']['twitter'])

Output program:

Judul: Belajar Dictionary Pada Python 3
Tanggal: 01 Februari 2021
Facebook share: 0
Twitter share: 2

Hanya saja, di antara keunggulan menggunakan fungsi

pertemuan_hari_ini = {
  "judul": "Belajar Dictionary Pada Python 3",
  "tanggal": "01 Februari 2021",
  "kategori": [
    "Python", "Python Dasar"
  ],
  "page_views": 10,
  "published": True,
  "share_count": {
    "facebook": 0,
    "twitter": 2
  }
}
3 adalah:

Kita bisa mengatur nilai default jika key pada dictionary yang kita panggil tidak ditemukan. Hal itu akan mencegah sistem untuk menampilkan error.

Perhatikan contoh berikut, perintah yang pertama akan menimbulkan error\ sedangkan perintah yang kedua tidak:

share_count = pertemuan_hari_ini.get('share_count')

# ini error
print('Instagram share:', share_count['instagram'])
# sedangkan ini tidak error
print('Instagram share:', share_count.get('instagram', 0))

Coba jalankan lagi dengan menghapus perintah yang pertama.

Perulangan Untuk Dictionary

Kita juga bisa menampilkan semua isi dari sebuah dictionary dengan memanfaatkan perulangan.

Perhatikan contoh berikut:

buku = {
  'judul': 'Hafalan Sholat Delisa',
  'penulis': 'Tere Liye'
}

for key in buku:
  print(key, '->', buku[key])

Jika dijalankan, kita akan mendapatkan output:

judul -> Hafalan Sholat Delisa
penulis -> Tere Liye

Atau kita juga bisa memanggil fungsi

pertemuan_hari_ini = {
  "judul": "Belajar Dictionary Pada Python 3",
  "tanggal": "01 Februari 2021",
  "kategori": [
    "Python", "Python Dasar"
  ],
  "page_views": 10,
  "published": True,
  "share_count": {
    "facebook": 0,
    "twitter": 2
  }
}
5 untuk perulangan yang lebih simpel:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
0

Kode di atas akan menghasilkan output yang sama.

Mengubah Nilai Item

Seperti yang telah kita singgung di atas bahwasanya item pada dictionary bersifat changeable alias bisa diubah.

Untuk mengubah nilai item pada suatu dictionary, caranya simpel seperti mengubah variabel pada umumnya.

Contoh:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
1

Jika dieksekusi, sistem akan memberikan kita output seperti ini:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
2

Menambahkan Item

Untuk menambahkan key dan item baru, caranya seperti mengedit item.

Jadi:

  • Kalau key yang kita definisikan ternyata sudah ada, sistem akan me-replace item yang lama dengan yang baru, alias meng-edit
  • Tapi jika key yang kita definisikan ternyata tidak ada, maka sistem akan menambahkannya sebagai item baru.

Contoh:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
3

Kita akan mendapatkan output:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
4

Menghapus Item

Untuk menghapus item, terdapat dua cara:

  1. Menggunakan statement
    pertemuan_hari_ini = {
      "judul": "Belajar Dictionary Pada Python 3",
      "tanggal": "01 Februari 2021",
      "kategori": [
        "Python", "Python Dasar"
      ],
      "page_views": 10,
      "published": True,
      "share_count": {
        "facebook": 0,
        "twitter": 2
      }
    }
    
    6.
  2. Atau menggunakan fungsi
    pertemuan_hari_ini = {
      "judul": "Belajar Dictionary Pada Python 3",
      "tanggal": "01 Februari 2021",
      "kategori": [
        "Python", "Python Dasar"
      ],
      "page_views": 10,
      "published": True,
      "share_count": {
        "facebook": 0,
        "twitter": 2
      }
    }
    
    7

Perhatikan contoh berikut:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
5

Apa bedanya memakai cara pertama dan cara kedua?

Bedanya, kalau menggunakan fungsi

pertemuan_hari_ini = {
  "judul": "Belajar Dictionary Pada Python 3",
  "tanggal": "01 Februari 2021",
  "kategori": [
    "Python", "Python Dasar"
  ],
  "page_views": 10,
  "published": True,
  "share_count": {
    "facebook": 0,
    "twitter": 2
  }
}
8, kita bisa mendapatkan nilai kembalian dari data yang telah dihapus.

Contoh:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
6

Output dari program di atas:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
7

Operator Keanggotaan

Kita bisa memanfaatkan untuk tipe data dictionary pada python.

Perhatikan contoh berikut:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
8

Output:

artikel = {
  "judul": "Menu Masakan Enak",
  "judul": "Menu Masakan Enak Tradisional"
}

print(artikel.get("judul"))
9

Panjang atau Banyak Key Pada Dictionary

Terakhir tapi bukan yang paling akhir, kita bisa juga menghitung jumlah key yang terdapat pada sebuah dictionary dengan fungsi

pertemuan_hari_ini = {
  "judul": "Belajar Dictionary Pada Python 3",
  "tanggal": "01 Februari 2021",
  "kategori": [
    "Python", "Python Dasar"
  ],
  "page_views": 10,
  "published": True,
  "share_count": {
    "facebook": 0,
    "twitter": 2
  }
}
9.

Contoh:

Menu Masakan Enak Tradisional
0

Output:

Menu Masakan Enak Tradisional
1

Kode program lengkap

Oke, sampai sini dulu pertemuan kita kali ini.

Seperti biasa, untuk kode program lengkap bisa kalian dapatkan pada repository github python-dasar.

Nah, jangan lupa kasih star ya!⭐🌟

Pertemuan Selanjutnya

Terus…

Insyaallah pada pertemuan berikutnya kita akan datang dengan pembahasan tentang fungsi (def) pada python.

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 ( } ).

Apa fungsi dictionary?

Dictionary merupakan tipe data pada Python yang berfungsi untuk menyimpan kumpulan data atau nilai, yang setiap urutanya berisi key dan value.