Pada seri belajar python dasar ini kita telah membahas berbagai macam tipe data pada python, termasuk tipe data kolektif seperti list, tuple, set, dan dictionary. Show Agar lebih paham lagi tentang berbagai macam tipe data kolektif di atas, pada kesempatan kali ini kita akan membahas tentang perbedaan-perbedaan antar tipe data list, set, dan tuple pada python. Perbedaan Secara PengertianKita mulai dulu dari segi pengertian. Secara umum, semua tipe data di atas merupakan tipe data kolektif. Artinya: ia bisa menyimpan lebih dari satu nilai dalam satu variabel sekaligus. Bedanya:
Perhatikan tabel berikut untuk lebih jelasnya:
Perbedaan Sintaks PembuatanMasing-masing tipe data list, tuple, dan set memiliki sintaks pembuatan tersendiri. Di mana list menggunakan kurung siku ([]), tuple menggunakan kurung biasa (()) atau bisa juga tanpa kurung, dan set menggunakan tanda kurung kurawal ({}). Perhatikan tabel berikut untuk lebih jelasnya:
Perbedaan Cara Mengakses NilaiTipe data yang memiliki sifat “ordered” alias terurut (list dan tuple), cara mengakses nilainya bisa menggunakan indeks. Sedangkan variabel yang bersifat “unordered” alias tidak terurut seperti set, ia tidak bisa diakses secara eksplisit. Contoh list dan tuple: list_a = [1, 2, 3] print(list_a[0]) print(list_a[1]) print(list_a[2]) tuple_a = 10, 20, 30 print(tuple_a[0]) print(tuple_a[1]) print(tuple_a[2]) Output: Contoh set: set_b = { 15, 16, 17 } print(set_b[0]) print(set_b[1]) print(set_b[2]) Error: Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'set' object is not subscriptable Perbedaan Slicing DataUntuk list dan tuple, tidak ada perbedaan dalam hal slicing data –karena keduanya bersifat ordered. Ada pun set, ia tidak mendukung fitur slicing data. >>> list_a = [1, 2, 3, 4] >>> tuple_a = tuple(list_a) >>> >>> list_a[2:4] [3, 4] >>> tuple_a[2:] (3, 4) >>> Perbedaan Ubah DataUntuk ubah data ada dua tipe:
Dalam dua tipe di atas, hanya tipe data list saja yang bisa melakukan semuanya. Sedangkan set hanya bisa mengedit data untuk tipe yang kedua. Ada pun tuple, maka ia tidak bisa melakukan edit data sama sekali, baik tipe yang pertama mau pun tipe yang kedua. list_a = [1, 2, 3] print(f'Sebelum: {list_a}') # edit data yang paling tengah list_a[1] = 99 print(f'Sesudah: {list_a}') Output: Sebelum: [1, 2, 3] Sesudah: [1, 99, 3] Perbedaan Tambah DataUntuk mengedit data yang dalam artian “menambah data”, maka hanya ada dua tipe data yang bisa melakukannya; yaitu list dan set. Ada pun tuple tidak bisa melakukannya. Kita bisa menambahkan nilai baru kepada suatu list dengan memanggil fungsi list.append(), dan kita bisa melakukan hal yang sama dengan set menggunakan fungsi set.add(). Perhatikan contoh berikut: list_a = [1] set_a = {1, 39} print('[Sebelum]') print(f' list\t: {list_a}') print(f' set\t: {set_a}') list_a.append(10) list_a.append(50) set_a.add(50) set_a.add(100) print('[Sesudah]') print(f' list\t: {list_a}') print(f' set\t: {set_a}') Output: [Sebelum] list : [1] set : {1, 39} [Sesudah] list : [1, 10, 50] set : {1, 50, 100, 39} Perbedaan Hapus DataSama seperti sebelumnya, hanya tipe data list dan set saja yang bisa melakukan hapus data. Keduanya sama-sama menggunakan fungsi .remove(). Perhatikan contoh berikut: list_a = [1, 2, 3, 4] set_a = {1, 2, 3, 4} print('[Sebelum]') print(f' list\t: {list_a}') print(f' set\t: {set_a}') list_a.remove(2) list_a.remove(4) set_a.remove(2) set_a.remove(4) print('[Sesudah]') print(f' list\t: {list_a}') print(f' set\t: {set_a}') Output: [Sebelum] list : [1, 2, 3, 4] set : {1, 2, 3, 4} [Sesudah] list : [1, 3] set : {1, 3} Perbedaan Operator KeanggotaanBerikutnya adalah penggunaan operator keanggotaan in atau pun not in. Dua operator ini bisa kita gunakan baik pada list, tuple, dan set. Perhatikan contoh berikut: >>> list_a = [1, 2, 3] >>> tuple_a = 1, 2, 3 >>> set_a = {1, 2, 3} >>> >>> 1 in list_a True >>> 2 not in tuple_a False >>> 3 in set_a True >>> Perbedaan Ketika Dilakukan PerulanganYang terakhir tapi bukan yang paling akhir, kita bisa melakukan perulangan for untuk ketiga tipe data tersebut. Akan tetapi perlu diperhatikan bahwa tipe data set bertipe unordered, artinya bahwa data yang kita definisikan bisa jadi urutannya berbeda dengan data yang disimpan oleh sistem. Perhatikan contoh berikut: list_a = [3, 10, 1] tuple_a = 3, 10, 1 set_a = {3, 10, 1} print('[LIST]') for item in list_a: print(item) print('\n[TUPLE]') for item in tuple_a: print(item) print('\n[SET]') for item in set_a: print(item) Output: [LIST] 3 10 1 [TUPLE] 3 10 1 [SET] 1 10 3 KesimpulanTiga (dari 4) tipe data kolektif pada python –yaitu list, set dan tuple– memiliki berbagai macam kesamaan dan juga berbagai macam perbedaan. Masing-masing sifat pada tiap tipe data tersebut memberikan kita keleluasaan untuk memilih mana tipe data yang pas untuk suatu kasus, dan mana tipe data yang cocok untuk suatu kasus yang lain. Pertemuan SelanjutnyaOke karena ini adalah pertemuan terakhir dari seri belajar python dasar untuk pemula, pada pada pertemuan selanjutnya kita akan memulai seri baru belajar python untuk tingkat menengah. Jadi, pastikan kalian tetap semangat dan tetap stay tune, ya! 😎 Terima kasih banyak. Lanjut: Seri Tutorial Python Tingkat Menengah. |