Tipe data dictionary pada python

Tipe data dictionary pada python

Nurul Huda 1 February 2021


  1. Beranda
  2. Python
  3. Python Dasar
  4. Python Dasar: Struktur Dictionary 🐍

Tipe data dictionary pada python

  • Python
  • Python Dasar
  • Tipe Data

Daftar Isi

    • Pengertian Dictionary
    • Sifat Dictionary Items
    • Tipe Data pada Items Dictionary
    • Cara Membuat Dictionary
    • Cara Mengakses Item Pada Dictionary
    • Perulangan Untuk Dictionary
    • Mengubah Nilai Item
    • Menambahkan Item
    • Menghapus Item
    • Operator Keanggotaan
    • Panjang atau Banyak Key Pada Dictionary
    • Kode program lengkap
    • Pertemuan Selanjutnya

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 pertemuan_hari_ini.

Variabel tersebut menyimpan beberapa informasi sekaligus seperti judul, tanggal, kategori (yang berupa list), page_views, 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 pertemuan_hari_ini adalah dictionary.

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

  1. judul
  2. tanggal
  3. kategori
  4. page_views
  5. published
  6. dan share_count (bahkan value dari share_count 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. Unordered - tidak berurutan
  2. Changeable - bisa diubah
  3. Unique - 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 artikel 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 pertemuan_hari_ini 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 {}.
  2. Dan yang kedua bisa menggunakan fungsi atau konstruktor dict().

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 ([])
  • atau dengan menggunakan fungsi get()

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 get() 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 dictionary.items() untuk perulangan yang lebih simpel:

for nama_atribut, nilai in buku.items():
  print(nama_atribut, '->', nilai)

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:

mahasiswa = {
  'nama': 'Lendis Fabri',
  'asal': 'Indonesia'
}

# mengubah data
print('Nama awal:', mahasiswa.get('nama'))
mahasiswa['nama'] = 'Andi Mukhlish'
print('Setelah diubah:', mahasiswa.get('nama'))

Jika dieksekusi, sistem akan memberikan kita output seperti ini:

Nama awal: Lendis Fabri
Setelah diubah: Andi Mukhlish

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:

mahasiswa = {
  'nama': 'Lendis Fabri',
  'asal': 'Indonesia',
}

# output None
print('Hobi:', mahasiswa.get('hobi'))
# tambah data
mahasiswa['hobi'] = 'Memancing'
# print ulang
print('Hobi dari {} adalah {}'.format(
  mahasiswa.get('nama'),
  mahasiswa.get('hobi')
))

Kita akan mendapatkan output:

Hobi: None
Hobi dari Lendis Fabri adalah Memancing

Menghapus Item

Untuk menghapus item, terdapat dua cara:

  1. Menggunakan statement del <dict[key]>.
  2. Atau menggunakan fungsi dictionary.pop()

Perhatikan contoh berikut:

mahasiswa = {
  'nama': 'Wahid Abdullah',
  'usia': 18,
  'asal': 'Indonesia'
}

del mahasiswa['nama']
mahasiswa.pop('usia')
mahasiswa.pop('asal')

Apa bedanya memakai cara pertama dan cara kedua?

Bedanya, kalau menggunakan fungsi pop(), kita bisa mendapatkan nilai kembalian dari data yang telah dihapus.

Contoh:

pesan_singkat = {
  "isi": "ISI PESAN INI HANYA BISA DIBACA SEKALI SAJA!! 😱"
}

isi_pesan = pesan_singkat.pop('isi')

# akses langsung dari dictionary
# ouput: None
print('isi pesan:', pesan_singkat.get('isi'))

# akses dari hasil kembalian yang telah disimpan
print('isi pesan:', isi_pesan)

Output dari program di atas:

isi pesan: None
isi pesan: ISI PESAN INI HANYA BISA DIBACA SEKALI SAJA!! 😱

Operator Keanggotaan

Kita bisa memanfaatkan operator keanggotaan untuk tipe data dictionary pada python.

Perhatikan contoh berikut:

siswa = {
  'nama': 'Renza Ilhami'
}

print('Apakah variabel siswa memiliki key nama?')
print('nama' in siswa)

print('\nApakah variabel siswa TIDAK memiliki key usia?')
print('usia' not in siswa)

Output:

Apakah variabel siswa memiliki key nama?
True

Apakah variabel siswa TIDAK memiliki key usia?
True

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

Contoh:

sekolah = {
  'nama': 'Sekolah Dasar Negeri Surabaya 1',
  'jenjang': 'Sekolah Dasar',
  'akreditasi': 'A'
}

print(
  "Jumlah atribut variabel sekolah adalah:",
  len(sekolah)
)

Output:

Jumlah atribut variabel sekolah adalah: 3

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.

Jangan lupa share, dan komen jika ada yang kurang jelas!

Terima kasih banyak!

Mengangkangi Python: Level 1

Ikuti Kursus Cara Paling Cepat Menguasai Bahasa Python.

Apa itu tipe data dictionary pada Python?

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

Apa yang dimaksud dengan tipe data dictionary?

Dictionary merupakan tipe data pada Python yang berfungsi untuk menyimpan kumpulan data atau nilai, yang setiap urutanya berisi key dan value. Jika biasanya kita ingin mengakses nilai pada list menggunakan indeks, di dictionary ini kita perlu kata kunci (key) untuk mengakses nilainya.

Apa yang dimaksud dengan dictionary dalam struktur data?

Dictionary adalah stuktur data yang bentuknya seperti kamus. Ada kata kunci kemudian ada nilaninya. Kata kunci harus unik, sedangkan nilai boleh diisi denga apa saja. Pada contoh di atas kita membuat sebuah Dictionary bernama aku dengan isi data nama dan URL.

Manakah yang merupakan sebuah dictionary?

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