Python: Struktur Data

Muhammad Efan Abdulfattah
4 min readFeb 11, 2021

--

Pada seri sebelumnya telah dibahas mengenai Tipe Data dan Input/Output, jika ada pertanyaan mengenai sintaks yang digunakan pada contoh di bawah nanti, silakan pelajari sintaksnya di Python: Tipe Data & I/O. Sekarang kita akan belajar mengenai konsep beserta contohnya dari Struktur Data.

Struktur Data

Pada pengolahan data yang terdiri atas lebih dari satu nilai diperlukan suatu wadah untuk menampung data tersebut, inilah tugas dari Struktur Data. Secara umum, ada empat macam Struktur Data di dalam Python, yaitu: List, Tuple, Set, dan Dictionary. Tiap macamnya memiliki kegunaan masing-masing sesuai dengan permasalahan yang sedang ditangani. Berikut ini merupakan beberapa perbedaan dari setiap macamnya:

perbedaan tiap struktur data

Langsung saja ke penjelasan dan contohnya, yuk!

  • List bersifat mutable karena data atau value di dalamnya dapat diubah (ditambah atau dikurangi), dan juga bersifat ordered sehingga value yang ada di dalamnya bisa diakses melalui indeks.
contoh penambahan data pada list
contoh penghapusandata pada list
contoh pengaksesan data pada list
  • Tuple pada dasarnya mirip dengan List, yang membedakannya adalah sifat immutable yang dimiliki oleh Tuple, yaitu: data/value di dalamnya tidak dapat dapat diubah. Akan tetapi, data di dalam Tuple masih dapat diakses melalui indeks karena sifat lainnya, yaitu: ordered data.
  • Jika dibandingkan secara komputasi Tuple lebih cepat daripada List, meski dalam kenyataannya tidak terlalu terasa lebih cepat yang mana. Namun, Tuple dapat melindungi suatu data karena isinya tidak dapat diubah.
contoh pengaksesan data pada list
  • Set dapat bersifat mutable maupun immutable tergantung jenis Set mana yang digunakan. Set yang bersifat mutable dicirikan pada saat pendeklarasiannya, yaitu: menggunakan simbol {value} secara langsung atau menggunakan function set(value)
  • Sedangkan Set yang bersifat immutable dicirikan dengan penggunaan function frozenset(value) pada saat pendeklarasiannya
  • Kedua jenis Set di atas bersifat unique sehingga jika ada data baru yang bernilai sama dengan data lama, maka secara otomatis data tersebut tidak akan tercatat. Set juga bersifat unordered sehingga datanya tidak bisa diakses melalui indeks.
contoh pendeklarasian set
contoh penambahan data pada mutable set
contoh penghapusandata pada mutable set
contoh pendeklarasian frozenset
  • Dictionary bersifat mutable karena data di dalamnya dapat diubah. Struktur data jenis ini biasanya direpresentasikan sebagai data tabular atau tabel, seperti yang ada di Microsoft Excel. Jadi, key sebagai nama kolomnya, lalu values sebagai datanya.
  • Karena sifatnya unordered, maka key dapat dianggap sebagai indeks yang dibuat sendiri oleh user.
  • Serta, apabila terdapat dua atau lebih nama key yang sama, maka hanya akan disimpan salah satunya saja.
contoh pendeklarasian dictionary
contoh penambahan data pada dictionary
contoh penghapusan data pada dictionary; data atau value yang ingin dihapus dapat dipanggil melalui nama key-nya
contoh pengaksesan data/value pada dictionary
contoh pengubahan key dan data/value
gambaran data yang tersimpan apabila terdapat key yang namanya sama
  • Selain contoh operasi di atas, kita juga dapat menampilkan daftar key dan value pada Dictionary yang telah dibuat.
menampilkan daftar key dan value

Mungkin akan muncul pertanyaan di pikiran Pythoneers semua, kan ada empat macam struktur data, terus kapan harus pakai yang mana?

Perihal harus pakai yang mana tergantung dengan kebutuhan atau kasus yang sedang ditangani, kalau hanya ingin menyimpan sekelompok data dan kita bisa ubah isinya, gunakan saja List.

Atau ketika ingin menyaring suatu kelompok data agar datanya unique, Pythoneers bisa pilih Set. Lalu, ketika ingin mengakses suatu nilai berdasarkan nama sesuatu, misal: ingin mengakses urutan hari berdasarkan nama harinya, di kasus ini bisa menggunakan Dictionary.

Sekian, itulah beberapa macam Struktur Data pada Python beserta contoh penggunaannya. Untuk seri ke-empat akan dibahas mengenai Perulangan atau Looping. Cheers.

Terima kasih!

--

--

Muhammad Efan Abdulfattah
Muhammad Efan Abdulfattah

Written by Muhammad Efan Abdulfattah

0 Followers

AI and Data explorer

No responses yet